3

VBAには、通常は配列を返す関数があります。返すものがない場合は、空の変数(b = empty)を返します。配列をループするコードがいくつかありますが、変数が配列でない場合はエラーが発生します。独自のエラーを引き起こさないifステートメントを作成するにはどうすればよいですか。私が試してみました

if not b = empty then
'do the loop
end if

しかし、bが配列の場合、これはエラーになります。同様に、、などb = nullのエラーが発生します。b = nothingb(1,1) = ""

これを確認する最良の方法は何ですか?

4

1 に答える 1

6

変数が空かどうかをテストするには、IsEmpty関数を使用します。

If IsEmpty(b) Then
    Debug.Print "b is Empty"
End If

変数が配列であるかどうかをテストするには、VarType関数を使用します。

If VarType(b) And vbArray Then
    Debug.Print "b is an array"
End If
于 2012-10-23T09:59:21.920 に答える