Array関数やSplit関数で配列作成したらUBoundで個数を判断するといいですよ。
そんなお話です。
【VBA】配列の初期化で Array関数を使用 と Split関数で配列作成、UBoundで個数の判断【三流君】 - YouTube
www.youtube.com
配列の初期化を行いたかったので、
Array関数 を使用してみました。
外見の調整とArray関数を使用して配列作成
http://www.ken3.org/asp/backno/asp014.html
で、
'Array関数を使用して、評価コメントを初期化
strBOX = Array("かなり不満", "不満", "少し不満", "どちらとも言えない", _
"まぁまぁ", "満足", "大変満足")
と、配列初期化の解説をしてました。
'Array関数を使用してみました。 Sub test_Array() Dim i As Integer Dim strBOX 'Array関数を使用して、評価コメントを初期化 strBOX = Array("かなり不満", "不満", "少し不満", "どちらとも言えない", _ "まぁまぁ", "満足", "大変満足") For i = 0 To 6 Debug.Print i & " " & strBOX(i) Next i End Sub
似ている初期化処理で、
Split関数 で配列作成、 UBound で個数の判断
http://www.ken3.org/asp/backno/asp024.html
なんてことができます。
strBOX = Split("Ken3,ASP不得意,VBA少しできる", ",") '配列データを作成
と、
固定の文字列をバラして
'ループでデータを表示させる
For i = 0 To UBound(strBOX) 'UBound使用インデックス最大値までループ
Forでループを作る時、
0からUBound(strBOX)までのループにしてます。
UBound(配列)が配列の最大インデックスなので、
0~最後までのループが完成します。
なんて、使い方ができます。
'Split関数を使用して配列作成、UBoundで個数の判断 Sub test_Split() Dim i As Integer Dim strBOX '文字列をSplit関数で区切り文字カンマで区切った配列を作成する 'Split("区切られる元の文字列", "区切り文字") strBOX = Split("Ken3,ASP不得意,VBA少しできる", ",") '配列データを作成 '↑上で区切られた個数を知りたかったので、UBoundで個数 'ループでデータを表示させる For i = 0 To UBound(strBOX) 'UBound使用インデックス最大値までループ Debug.Print i & " " & strBOX(i) Next i End Sub