更新日:、 作成日:
VBA Join 関数:配列を区切り文字で結合する
はじめに
Excel VBA マクロの Join 関数から配列を区切り文字で結合する方法を紹介します。
Join 関数は、配列を区切り文字で結合した文字列に変換します。
A B C の配列なら A,B,C のようにカンマ区切りで結合できます。
配列をカンマ区切りなどの文字列に結合したいときに使用します。
カンマ区切りの文字列を配列にするには「Split 関数」を使用します。
文字列を結合するには「文字列を結合する」をご覧ください。
Join 関数の引数と戻り値
Join(文字列型配列)
文字列型配列の要素を半角スペースで結合した文字列に変換します。
Join(文字列型配列, 区切り文字)
要素を区切り文字で結合した文字列に変換します。
引数「文字列型配列」 | 文字列型配列 (String) を指定します。 |
引数「区切り文字」 | 省略できます。配列の要素を区切る文字を指定します。 |
戻り値の型 | 文字列型 (String) |
解説
引数「文字列型配列」には String 型の配列を指定します。
引数「文字列型配列」が String 型以外の配列なら、各要素を String 型に変換してから結合します。
引数「文字列型配列」には一次元配列を指定できます。二次元配列などを指定すると「エラー 5 プロシージャの呼び出し、または引数が不正です。」が発生します。
引数「区切り文字」を省略したときは、半角スペース " " で区切って結合します。
引数「区切り文字」が空文字 "" なら、すべての要素が区切り文字なしで結合します。
引数「区切り文字」が , なら、カンマ区切りの文字列に結合します。
カンマ区切りなどの文字列を配列に変換するには「Split 関数」を使用します。
スポンサーリンク
使用例
Join 関数の使用例を紹介します。
配列を区切り文字で結合する
配列を区切り文字で結合します。
Dim s As String
s = Join(Array("A", "B", "C")) ' 省略したときは半角スペース
Debug.Print(s) ' A B C
s = Join(Array("A", "B", "C"), "")
Debug.Print(s) ' ABC
s = Join(Array("A", "B", "C"), ",") ' カンマ区切り
Debug.Print(s) ' A,B,C
s = Join(Array(1, True, 3)) ' String 型以外の配列
Debug.Print(s) ' 1 True 3
Dim 配列(2) As String
配列(0) = "ああ"
配列(1) = "いい"
配列(2) = "うう"
s = Join(配列, "-")
Debug.Print(s) ' ああ-いい-うう
カンマ区切りを配列に変換する
「Split 関数」を使用して、カンマ区切りの文字列を配列に変換できます。
Dim list() As String
list = Split("A,B,C", ",")
Debug.Print(list(0)) ' A
Debug.Print(list(1)) ' B
Debug.Print(list(2)) ' C