このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】文字列を結合させる3つの方法

【VBA】文字列を結合させる3つの方法

今回はVBA(マクロ)で文字列を結合する方法を紹介します。

VBA(マクロ)で文字列を結合させる方法は次の3つがあり、それぞれの使い分け方とあわせて説明します。

  1. 「&」演算子を使う
  2. 「+」演算子を使う
  3. Join関数を使う

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらうのはいかがでしょうか?
マクロの作成請負をしていますので、こちらからご相談ください。

「&」演算子で文字列を結合させる(推奨)

Sub AndSample()
    Const str1 As String = "Hello"
    Const str2 As String = "World"
    
    MsgBox str1 & str2 
End Sub

VBAで文字列を結合するには、文字列を結合するための「&」演算子を使用することができます。

Sub AndSample2()
    Const str1 As Long = 1
    Const str2 As Long = 2
    
    MsgBox str1 & str2
End Sub

「&」演算子であれば数値(Integer型やLong型)であっても文字列として結合することができるため、基本的には「&」演算子を使うのを推奨します。

「+」演算子で文字列を結合させる(非推奨)

Sub PlusSample()
    Const str1 As String = "Hello"
    Const str2 As String = "World"
    
    MsgBox str1 + str2
End Sub

「&」演算子以外にも「+」演算子で結合させることもできます。

Sub PlusSample2()
    Const str1 As Long = 1
    Const str2 As Long = 2
    
    '1+2が計算されて3が表示される
    MsgBox str1 + str2
End Sub

しかし数値(Integer型やLong型)を結合させようとすると足し算をしてしまうため、基本的には「&」演算子を使うのがおすすめです。

Join関数で文字列を結合させる

Sub JoinSample()
    
    Dim arr
    arr = Array("Hello", "World") '結合させる文字列の配列
    
    'Join関数で配列を繋げる
    MsgBox Join(arr, "")
End Sub

Join関数は配列内の要素を結合した文字列を返す関数です。

そのためサンプルコードのように文字列の配列を用意してJoin関数を使うと文字列を結合させることができます。

VBAが難しいと感じたら
プロにお任せして代わりに作ってもらうのはいかがでしょうか?
マクロの作成請負をしていますので、こちらからご相談ください。

VBA

Posted by やろまい