【VBA】文字列を結合させる3つの方法
今回はVBA(マクロ)で文字列を結合する方法を紹介します。
VBA(マクロ)で文字列を結合させる方法は次の3つがあり、それぞれの使い分け方とあわせて説明します。
- 「&」演算子を使う
- 「+」演算子を使う
- Join関数を使う
「&」演算子で文字列を結合させる(推奨)
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関数を使うと文字列を結合させることができます。