教えて!ExcelVBA!

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

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

f:id:m_kbou:20200828144449p:plain

フォームにスクロールバーを追加した場合、VBE画面左下のスクロールバープロパティ内にある[TabStop]の使い方について紹介します。

 

 

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

以下のスクロールバープロパティ内の赤枠箇所が[TabStop]となります。
[TabStop]はTabキーを押下した場合にフォーカスを移す設定ができます。

f:id:m_kbou:20200828144505p:plain

TabStopに定義する設定値は、以下2パターンとなります。

定義 内容
True フォーカスを移します。(既定値)
False フォーカスを移しません。

 

TabStopを設定する方法

(1)スクロールバープロパティ内のTabStopをクリックすると▼ボタンが表示されます。(※今回は二番目のスクロールバーにフォーカスを移すか否かを設定するため、二番目のスクロールバーを選択します。)

f:id:m_kbou:20200828144518p:plain

(2)▼ボタンをクリックするとプルダウンリストが表示されます。(※プルダウンリストには上記の設定値一覧が表示されます。)

f:id:m_kbou:20200828144531p:plain

スクロールバーにフォーカスを移す(True)

(3)今回はスクロールバーにフォーカスを移すため「True」を選択します。また、スクロールバーにフォーカスが移る事を確認するため、一度フォーム上でクリックをした後、上部にある<実行>ボタンをクリックします。

f:id:m_kbou:20200828144543p:plain

(4)フォームが表示され最上部のスクロールバーにフォーカスが有る(上部のスクロールバーにカーソル有り)事が確認できます。

f:id:m_kbou:20200828144556p:plain

(5)<Tab>キーを押下すると二番目のスクロールバーにフォーカスが移る(二番目のスクロールバーにカーソル有り)事が確認できます。

f:id:m_kbou:20200828144607p:plain

スクロールバーにフォーカスを移さない(False)

(6)今回はスクロールバーにフォーカスを移さないため「False」を選択します。また、スクロールバーにフォーカスが移らない事を確認するため、一度フォーム上でクリックをした後、上部にある<実行>ボタンをクリックします。

f:id:m_kbou:20200828144621p:plain

(7)フォームが表示され最上部のスクロールバーにフォーカスが有る(上部のスクロールバーにカーソル有り)事が確認できます。

f:id:m_kbou:20200828144556p:plain

(8)<Tab>キーを押下すると三番目のスクロールバーにフォーカスが移る(三番目のスクロールバーにカーソル有り)事が確認できます。(※二番目のスクロールバーにフォーカスを移さない設定をしたため、三番目のスクロールバーにフォーカスが移ります。)

f:id:m_kbou:20200828144636p:plain

TabStopを設定する方法についての説明は以上です。

 

おわりに

今回はTabStopの設定方法について説明しました。状況に合わせて有効に活用してみて下さい。また、その他のスクロールバープロパティの使い方はこちらを参考にして下さい。