Vbaに組み込みの数値アップダウンコントロールがありますか、それともそのようなコントロールを作成する必要がありますか?
そのようなコントロールがある場合、使用できるイベントは何ですか。
Plsは提案します。
そのためにSpinButton1
コントロールを使用できます
[〜#〜]スナップショット[〜#〜]
[〜#〜]コード[〜#〜]
以下に示すように、設計時または実行時にSpinButton1
の最小値と最大値を設定できます。
Private Sub UserForm_Initialize()
SpinButton1.Min = 0
SpinButton1.Max = 100
End Sub
Private Sub SpinButton1_Change()
TextBox1.Text = SpinButton1.Value
End Sub
[〜#〜]フォローアップ[〜#〜]
ユーザーがテキストボックスに入力した内容に基づいてテキストボックスの値を増減する場合は、これを使用します。これにより、テキストボックスは「番号のみ」のテキストボックスになり、他の要求を満たすだけです;)
Private Sub SpinButton1_SpinDown()
TextBox1.Text = Val(TextBox1.Text) - 1
End Sub
Private Sub SpinButton1_SpinUp()
TextBox1.Text = Val(TextBox1.Text) + 1
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case vbKey0 To vbKey9, 8
Case Else
KeyAscii = 0
Beep
End Select
End Sub