【Excel VBA】Split関数で文字列を区切る1

Excel VBA講座 開講中!

今回はExcel VBAで文字列を区切る方法(区切り位置)についてご紹介します。
今回の例を読み進めるにあたり、配列についてある程度理解している必要がありますのでご注意ください。
※Excel VBAにおける配列については別途改めて記事を作成する予定です。

スポンサーリンク
スポンサーリンク

Split関数で文字列を区切る

Excel VBAでは、下記のSplit関数で文字列を区切る事ができます。

Split(区切りたい文字列, 区切り文字)

それでは早速、下記のサンプル1で実際に文字列を区切ってみます。

・サンプル1

Sub 文字列区切り1()

Dim str As String
Dim ary As Variant

str = “1,2,3,4,5”
ary = Split(str, “,”)

Cells(1, 1).Value = ary(0)
Cells(2, 1).Value = ary(1)
Cells(3, 1).Value = ary(2)
Cells(4, 1).Value = ary(3)
Cells(5, 1).Value = ary(4)

End Sub

それでは上記のサンプル1についてご紹介しますと、

str = “1,2,3,4,5”

では、今回区切りたい文字列「1,2,3,4,5」を変数strに代入しています。

ary = Split(str, “,”)

では、変数strに代入した「1,2,3,4,5」という文字列を、split関数によりカンマで区切り、変数aryに代入しています。

Cells(1, 1).Value = ary(0)
Cells(1, 2).Value = ary(1)
Cells(1, 3).Value = ary(2)
Cells(1, 4).Value = ary(3)
Cells(1, 5).Value = ary(4)

では、変数aryに格納された、ary(0)~ary(4)までの値をセルA1~A5に記入しています。

Split関数 実行結果

Split関数 実行結果

(一応ではありますが、配列は(0)から始まる((0)が1番目である)という事を忘れないようにしてください!)

しかしこのままでは、文字列を区切った後の配列数が事前に分からない場合に対処する事ができません。

そこで次回は、文字列を区切った後の配列数が事前に分からない場合の処理方法についてご紹介します。

【Excel VBA】split関数で文字列を区切る2(UBound関数で配列の最大インデックスを調べる)
今回は前回の記事の続きです。 https://vba-gas.info/excel-vba-split1 前回のサンプル1では事前に配列の数が分かっていましたが、このままでは文字列を区切った後の配列数が事前に分からない場合に対処する事ができません。 そこで今回は、文字列を区切った後の配列数が事前に分からない場合の処理方法についてご紹介します。
タイトルとURLをコピーしました