分かりやすく、使いやすく。

配列のサイズを動的に変更する方法

スポンサーリンク

VBScript で配列のサイズを動的に変更するには Redim を使用します。ただし、ReDim を使用する場合、次の点に注意する必要があります。

  • ReDim を使用できるのは要素数を指定せずに宣言した配列のみ
  • ReDim を使用する際に中身を残す場合は Preserve を使用する

サンプルコードは次の通りです。

VBScript(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Option Explicit
 
'サイズを指定せずに配列を宣言する
Dim strNames()
 
'配列のサイズを4(最大インデックス3)に変更
Redim strNames(3)
 
'配列の各要素に値を代入
strNames(0) = "太郎"
strNames(1) = "次郎"
strNames(2) = "三郎"
strNames(3) = "四郎"
 
'最大インデックスを超えるインデックスを指定するとエラーになる
'strNames(4) = "五郎"
 
'配列のサイズを5(最大インデックス4)に変更
Redim Preserve strNames(4)
 
strNames(4) = "五郎"
 
Dim i
 
For i = LBound(strNames) To UBound(strNames)
    WScript.Echo strNames(i)
Next 

上記の実行結果は次の通りです。

太郎
次郎
三郎
四郎
五郎 
スポンサーリンク
スポンサーリンク