1. ホーム
  2. excel

配列の長さを取得しますか?

2023-07-25 02:13:07

質問

配列の長さを取得しようとしているのですが、このエラーが出続けます。

オブジェクトが必要です。

私は何か間違ったことをしているのでしょうか?

Dim columns As Variant
columns = Array( _
"A", "ID", _
"D", "Name")
Debug.Print columns.Length  ' Error: Object required

どのように解決するのですか?

配列の長さです。

UBound(columns)-LBound(columns)+1

UBound VBAの配列は異なるインデックスから始まることがあるため、すべての配列の長さを取得するための最良の方法とは言えません、例えば Dim arr(2 to 10)

UBound は、配列が1ベースである場合のみ正しい結果を返します(例:1 からインデックスを開始する Dim arr(1 to 10) . それ以外の状況では、間違った結果を返します。 Dim arr(10)

VBAの配列の詳細 このVBAの配列のチュートリアルで .