在选定范围的VBA中增加/减less多个单元格的值

我有一个旋钮分为两个事件SpinUpSpinDown 。 我希望用户select任何给定范围的单元格,然后使用旋转button,将单元格的值增加或减less1.这是我迄今的代码:

 Private Sub SpinButton1_SpinUp() Dim myRange As Range Set myRange = Selection SpinButton1.Height = 45 SpinButton1.Width = 39 SpinButton1.Left = 283.5 SpinButton1.Top = 328.5 myRange.Value = myRange.Value + 1 '(assume -1 for the SpinDown function) End Sub 

当我一次select多个单元格时,出现运行时错误,说明types不匹配。 我很新的VBA / Excel编程,所以任何帮助表示赞赏。 谢谢!

一种方法是检查是否select了多个单元格。 就像是:

 Sub test() Dim myRange As Range Set myRange = Selection If myRange.Cells.Count > 1 Then Exit Sub MsgBox "Only 1 cell selected" End Sub 

如果你想操纵多个单元格,试试这个:

 Private Sub SpinButton1_Change() With Application .ScreenUpdating = False End With Dim myRange As Range Dim myCell As Range Set myRange = Selection SpinButton1.Height = 45 SpinButton1.Width = 39 SpinButton1.Left = 283.5 SpinButton1.Top = 328.5 For Each myCell In myRange myCell.Value = myCell.Value + 1 Next myCell With Application .ScreenUpdating = True End With End Sub