サイトについて      連絡先   検索

VBA IsArray 関数

はじめに

Excel VBA の IsArray 関数を紹介します。

IsArray 関数は、指定した値が配列かどうかを判定します。

For 文などの繰り返し処理をする前のチェックなどに使用します。

構文

IsArray(配列)

名前 説明
引数「配列」配列か判定したい値を指定します。
戻り値ブール型 (Boolean)

解説

動的配列、静的配列、二次元配列など、配列が指定されたときは、True を返します。

それ以外の数値や文字列などが指定されたときは False を返します。

配列の要素数は関係ありません。要素数 0 の配列でも True を返します。

使用例


Dim 動的() As Integer
Dim 静的(5) As String
Dim b As Boolean

b = IsArray(動的)
Debug.Print (b) ' True

b = IsArray(静的)
Debug.Print (b) ' True

b = IsArray("あいう")
Debug.Print (b) ' False

Dim 二次元(1, 1) As Integer
b = IsArray(二次元)
Debug.Print (b) ' True

なんらかの関数の戻り値が、配列か他の値の 2 種類あるときは、IF 文で判定して配列のときだけループできます。


Dim 配列 As Variant
配列 = Array(1, 2, 3) ' 自作の配列を返す関数など

Dim v As Variant
' 配列のときだけループする
If IsArray(配列) = True Then
    For Each v In 配列
        Debug.Print (v)
    Next
End If

' 配列のときだけループする
Dim i As Integer
Dim min As Integer
Dim max As Integer
If IsArray(配列) = True Then
    min = LBound(配列)
    max = UBound(配列)
    For i = min To max
        Debug.Print (配列(i))
    Next
End If

関連ページ