8

このような基本的な質問をして申し訳ありませんが、これは私を怒らせています...

配列内の要素の数を返す VBA の関数は何ですか?つまり、配列が空の場合、0 を返しますか?

空の配列で呼び出されるとエラーがスローされるため、UBound でこれを行うことはできません。フォーラムで提案されているように、OnError を使用して最初に空かどうかを判断する方法が信じられません! array.Length は、不適切な修飾子か何かについて文句を言います。

私は本当にこれを行う必要があります:

dim termAry() as String
populate termAry
...

private sub populate(terms() as String)
   redim preserve terms(terms.Length) ' Redim takes ubound for array size
   terms(ubound(terms)) = "something really annoying"
end sub

PS VBA言語と関数リファレンスの簡潔なセットへの適切なリンクが最も役立ちます... MSDNは本当にあいまいです!!!

4

1 に答える 1