教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 関数】UBound関数で配列の上限値を調べる方法を教えて!

f:id:m_kbou:20211229150305p:plain



 

構文

記述方法は以下の通りとなります。

(1)配列が一次元の場合

UBound([一元配列])

[説明]:

指定した一次元配列の行上限値(インデックス番号)を返します。

f:id:m_kbou:20211229140813p:plain

[記述例]:

UBound(配列)

(2)配列が二次元の場合

UBound([二次元配列],[次元数])

[説明]:

指定した二次元配列の行又は列の上限値(インデックス番号)を返します。

f:id:m_kbou:20211229150418p:plain

[記述例]:

UBound(二次元配列,1)
UBound(二次元配列,2)

 

使い方

使い方について具体的に説明します。

一次元配列での行上限値を調べる方法

一次元配列での行上限値を調べる方法について説明します。

[プログラミング例]:

Option Base 0

Sub サンプル()

  Dim 配列(3) As String

  MsgBox UBound(配列)

End Sub

「Option Base 0を指定します。サンプルプロシージャの中に一次元配列:配列(3)を定義し、UBound関数を使用して行上限値MsgBoxで表示して下さい。」との意味になります。

f:id:m_kbou:20211229150449p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。 

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20211229150508p:plain

②結果は以下の様に表示されます。MsgBoxで「3」が表示されます。

f:id:m_kbou:20211229150526p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

一次元配列での行上限値を調べる方法についての説明は以上です。

 

二次元配列での行上限値を調べる方法

二次元配列での行上限値を調べる方法について説明します。

[プログラミング例]:

Option Base 0

Sub サンプル()

  Dim 二次元配列(3, 5) As Variant

  MsgBox UBound(二次元配列, 1)

End Sub

「Option Base 0を指定します。サンプルプロシージャの中に二次元配列:二次元配列(3, 5)を定義し、UBound関数を使用して行上限値MsgBoxで表示して下さい。」との意味になります。

f:id:m_kbou:20211229151458p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。 

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20211229151515p:plain

②結果は以下の様に表示されます。MsgBoxで「3」が表示されます。

f:id:m_kbou:20211229151526p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

二次元配列での行上限値を調べる方法についての説明は以上です。

 

二次元配列での列上限値を調べる方法

二次元配列での列上限値を調べる方法について説明します。

[プログラミング例]:

Option Base 0

Sub サンプル()

  Dim 二次元配列(3, 5) As Variant

  MsgBox UBound(二次元配列, 2)

End Sub

「Option Base 0を指定します。サンプルプロシージャの中に二次元配列:二次元配列(3, 5)を定義し、UBound関数を使用して列上限値MsgBoxで表示して下さい。」との意味になります。

f:id:m_kbou:20211229152255p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。 

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20211229152309p:plain

②結果は以下の様に表示されます。MsgBoxで「5」が表示されます。

f:id:m_kbou:20211229152327p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

二次元配列での列上限値を調べる方法についての説明は以上です。

 

プログラミング(サンプル)

プログラミング事例を紹介します。

www.osiete-excelvba.work

 

おわりに

今回はUBound関数を使用した配列の上限値を調べる方法について説明しました。類似の内容として配列の下限値を調べる方法もあります。こちらも参考にしてみて下さい。