教えて!ExcelVBA!

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

【ExcelVBA フォーム&コントロール】スクロールバープロパティウィンドウ内にある[TabIndex]の使い方を知りたいです。教えて!

       f:id:m_kbou:20200828143516p:plain

フォームにスクロールバーを追加した場合、VBE画面左下のスクロールバープロパティウィンドウ内に表示される[TabIndex]の使い方について説明します。

 

【目次】

 

スクロールバープロパティ内にあるTabIndexとは

以下のスクロールバープロパティウィンドウ内の赤枠箇所が[TabIndex]となります。TabIndexはスクロールバーがフォーカスを得る順番を設定する事ができます。

f:id:m_kbou:20200828143534p:plain

 

TabIndexを設定する方法

設定方法について説明していきます。

(1)今回の例として、3つのスクロールバーについて上から順番にフォーカスを移動させる設定方法について説明していきます。

f:id:m_kbou:20200828143547p:plain

(2)まず最初に一番上のスクロールバーが最初のフォーカスを得るため、一番上のスクロールバーをクリックした後にTabIndexプロパティに「0」を入力します。(※値は0から順番に設定します)

f:id:m_kbou:20200828143602p:plain

(3)次に二番目のスクロールバーがフォーカスを得るため、二番目のスクロールバーをクリックした後にTabIndexプロパティに「1」を入力します。

f:id:m_kbou:20200828143615p:plain

(4)最後に三番目のスクロールバーがフォーカスを得るため、三番目のスクロールバーをクリックした後にTabIndexプロパティに「2」を入力します。

f:id:m_kbou:20200828143626p:plain

(5)スクロールバーが上から順番にフォーカスがスライドする事を確認するため、一度フォーム上でクリックをした後、上部にある<実行>ボタンをクリックします。

f:id:m_kbou:20200828143637p:plain

(6)フォームが表示され一番上のスクロールバーがフォーカス(一番上のスクロールバーにカーソル有り)を得ている事を確認できます。二番目のスクロールバーにフォーカスが移動する事を確認するため、<Enter>キー又は<Tab>キーを押下します。

f:id:m_kbou:20200828143649p:plain

(7)二番目のスクロールバーがフォーカス(二番目のスクロールバーにカーソル有り)を得ている事を確認できます。三番目のスクロールバーにフォーカスが移動する事を確認するため、<Enter>キー又は<Tab>キーを押下します。

f:id:m_kbou:20200828143702p:plain

(8)三番目のマルチページがフォーカス(三番目のマルチページにカーソル有り)を得ている事を確認できます。(※TabIndexプロパティに指定した数字の順番で各マルチページにフォーカスが移動しました)

f:id:m_kbou:20200828143714p:plain

TabIndexを設定する方法の説明は以上です。

 

おわりに

今回はTabIndexの設定方法について説明しました。フォーカスを得る順番を指定する事で、ユーザ操作を向上させる事ができます。是非有効に活用してみて下さい。また、TabIndexプロパティに指定した数字の順番にフォーカスを得るには、TabStopの値がTrueの場合のみ有効となります。こちらも予め理解しておいて下さい。