『Excel VBA 表計算とプログラミング学習サイト』では、アフィリエイトプログラムを利用して商品を紹介しています。

【VBA】Join関数で配列要素を結合します

【VBA】Join関数

今回は VBA の配列要素を全て結合する Join関数 について説明します。特に難しいことは何もないですけど、配列の操作をひと通り覚えておくとプログラミングの幅が広がります。Join関数を使うときは

Join(結合元データ, [デリミタ])

と書きます。結合元データには 1 次元配列要素を指定するんですけど、配列なら何でもいいというわけはなく、中身は文字列限定です。数字とか真偽値とか変なものを入れるとエラーになるので気をつけましょう。要するに Join は文字列同士をくっつける関数だと覚えておけば間違いありません。デリミタ(区切り文字)は結合する文字の間に入る記号です。「。」でも「、」でも「接着剤」でも、好きな文字を指定してください。省略すると文字の間に半角スペースが入ります。それでは、サンプルコードを見てみましょう。

'[VBA] Joinで配列要素を結合するプロシージャ

Sub Join_Words()

  Dim myword(3) As String
  Dim mysentence As String

  myword(0) = "VBA"
  myword(1) = "ハイマスター"
  myword(2) = "こばとちゃん"
  myword(3) = "参上!"

  'Joinで配列要素を結合
  mysentence = Join(myword)

  Debug.Print mysentence

End Sub

Join_Words() を実行するとイミディエイトウィンドウに「VBA ハイマスター こばとちゃん 参上!」と表示されます。デリミタを省略しているので、文字の間に半角スペースが空いちゃってますね。隙間をなくしたい場合はデリミタに空白文字列を意味する “” を指定します。

mysentence = Join(myword,"")

と書き直して実行すると「VBAハイマスターこばとちゃん参上!」と表示されます。
 

コメント