スピンボタン Excel VBA

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

masahiro yoshida

Last updated on 7月 6, 2022

VBAでは スピンボタン というボタンがあり、ユーザーはそのボタンでセル内の数値を増減させることができます。ユーザーがボタンの上下をクリックするたびに、数値はそれぞれ増加または減少します。このチュートリアルでは、ExcelとVBAでスピンボタンを作成し、それを使用する方法を学習します。

Optionボタンの使用方法を学びたい場合はこちら:オプションボタン Excel VBA

スピンボタンの作成

ワークシートにスピンボタンを挿入するには、[開発者]タブで[挿入]をクリックし、ActiveXコントロールのスピンボタンを選択する必要があります。

vba spin button insert スピンボタン

画像1.ワークシートにスピンボタンを挿入する

挿入したスピンボタンを選択すると、[開発]タブの プロパティをクリックすることができます。

vba spin button properties スピンボタン

画像2.スピンボタンのプロパティを変更する

ここでは、スピンボタンの様々なプロパティを設定することができます。はじめに、オブジェクト名属性をspbSpinButtonに変更しました。これで、VBAコードでこの名前のSpinボタンを使用できるようになりました。その他の重要な属性は、数値範囲を定義するMinと Max、増分値を定義するSmallChangeです。

VBAを使用したスピンボタンの設定

まず、VBAでスピンボタンのプロパティを設定し、ワークシートの値を取得する方法を説明します。コードは、オブジェクトspbSpinButtonのイベントChangeにある必要があります。このイベントに入るには、スピンボタン上で右クリックし、コードの表示オプションを選択します。以下がそのコードです。

Private Sub spbSpinButton_Change()

    Sheet1.spbSpinButton.Min = 100

    Sheet1.spbSpinButton.Max = 200

    Sheet1.spbSpinButton.SmallChange = 10

    Sheet1.Range("B2")=Sheet1.spbSpinButton.Value

End Sub

まず、数値範囲の下限を設定します。

Sheet1.spbSpinButton.Min = 100

その後、数値の上限を設定します。

Sheet1.spbSpinButton.Max = 200

また、数値の増加のステップを設定する必要があります。

Sheet1.spbSpinButton.SmallChange = 10

最後に、Spinボタンの現在の値をセルB2に代入しています。この値は、Sheet1.spbSpinButtonオブジェクトのValue属性にあります。

Sheet1.Range("B2") = Sheet1.spbSpinButton.Value

これで、スピンボタンをクリックするたびに、値が100-200の範囲で10ずつ増減するようになります。

vba spin button result スピンボタン

画像3.VBAのスピンボタンで数値を増加させる

エクセルでスピンボタンを設定する

スピンボタンを設定するもう一つの方法は、プロパティを使用することです。[開発]タブの[プロパティ]をクリックします。

vba spin button set in excel スピンボタン

画像4. Excelでスピンボタンを設定する

ここで、必要な属性をすべて設定することができます。もし、スピンボタンの結果をセルB2に入れたいなら、このセルをLinkedCell属性に入れなければなりません。

vba-free-addin

VBA Code Examples Add-in

Easily access all of the code examples found on our site.

Simply navigate to the menu, click, and the code will be inserted directly into your module. .xlam add-in.

(No installation required!)

Free Download

Return to VBA Code Examples