教えて!ExcelVBA!

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

【ExcelVBA フォーム&コントロール】スクロールボックスのスクロール幅を設定する方法②を教えて!

構文

構文は以下の通りです。

スクロールバー名.SmallChange = 値

解説

スクロールバーの両端にある矢印ボタンをクリックした時のスクロール幅を設定するには、SmallChangeプロパティを使用します。値にはスクロール幅を設定します。これにより、スクロールバーが1回の移動でどれだけ移動するかが決まります。

使い方

具体的な使い方を紹介します。

Private Sub UserForm_Initialize()
    ' フォーム初期化時にスクロール単位を設定
    Me.ScrollBar1.SmallChange = 20
End Sub

このようにすることで、フォームが初期化される際にスクロール単位が20に設定されます。

プログラミング例

以下に、プログラミング例を紹介します。

Private Sub UserForm_Initialize()
    ' フォームが初期化される際に実行されるコード
    Me.ScrollBar1.SmallChange = 1 ' スクロールボックスのスクロール幅を1に設定
End Sub

Private Sub ScrollBar1_Change()
    ' スクロールボックスの値が変更された際に実行されるコード
    ' ここに適当な処理を追加
End Sub

この例では、ScrollBar1はスクロールボックスのコントロール名です。必要に応じて、実際のコントロール名に合わせて変更してください。SmallChangeプロパティの値を適切に設定することで、スクロールボックスのスクロール時の小刻みの変更量を調整できます。

まとめ

スクロールバーの両端にある矢印ボタンをクリックした時のスクロール幅を設定するには、SmallChangeプロパティを使用します。設定したスクロール幅に基づいて、ユーザーがスクロールバーを操作すると、指定された大きさでのスクロールが行われます。是非活用してください。