VBA 使用右键 click/left 单击功能更改多个单元格中的添加值的代码
VBA code to change add value in multiple cells with right click/left click function
我是 Excel 的新手,我有一个包含多个命令按钮的工作表。我想知道我是否可以通过左键单击(正常)和右键单击来为多个单元格添加值。
例如,如果我左键单击命令按钮,它会向单元格 A1
添加 (+1),但如果我右键单击同一个命令按钮,它会向单元格添加 (+1) B1
.
这是我在进行正常左键单击时必须添加 (+1) 的代码:
Sub Action68_Click()
'update column BR by adding 1 to the cell value'
Worksheets("Stats").Cells(CurrentPlayerRow, "BR").Value = Worksheets("Stats").Cells(CurrentPlayerRow, "BR").Value + 1
End Sub`
有没有使用右键单击按钮向单元格BQ
添加(+1)的方法?
您可以使用事件代码来获得所需的输出,而不是使用按钮。
两个这样的事件是双击事件和右键单击事件。
例如
- 如果您双击 列 BR 中从第 2 行开始的任何单元格,它将将该单元格递增 1。
- 如果您右键单击 从第 2 行开始的 BR 列中的任何单元格,它会将 BS 列中的相应单元格递增 1。
如果您认为可以使用这种方法,请将以下代码放在 Sheet 模块上,然后右键单击 Sheet 选项卡 --> 查看代码并粘贴下面给出的代码进入打开的代码 window.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim oval
If Target.Column = Range("BR1").Column And Target.Row > 1 Then
Cancel = True
oval = Target.Value
If IsNumeric(oval) Then
Target.Value = oval + 1
End If
End If
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim oval
If Target.Column = Range("BR1").Column And Target.Row > 1 Then
Cancel = True
oval = Target.Offset(0, 1).Value
If IsNumeric(oval) Then
Target.Offset(0, 1).Value = oval + 1
End If
End If
End Sub
我是 Excel 的新手,我有一个包含多个命令按钮的工作表。我想知道我是否可以通过左键单击(正常)和右键单击来为多个单元格添加值。
例如,如果我左键单击命令按钮,它会向单元格 A1
添加 (+1),但如果我右键单击同一个命令按钮,它会向单元格添加 (+1) B1
.
这是我在进行正常左键单击时必须添加 (+1) 的代码:
Sub Action68_Click()
'update column BR by adding 1 to the cell value'
Worksheets("Stats").Cells(CurrentPlayerRow, "BR").Value = Worksheets("Stats").Cells(CurrentPlayerRow, "BR").Value + 1
End Sub`
有没有使用右键单击按钮向单元格BQ
添加(+1)的方法?
您可以使用事件代码来获得所需的输出,而不是使用按钮。
两个这样的事件是双击事件和右键单击事件。
例如
- 如果您双击 列 BR 中从第 2 行开始的任何单元格,它将将该单元格递增 1。
- 如果您右键单击 从第 2 行开始的 BR 列中的任何单元格,它会将 BS 列中的相应单元格递增 1。
如果您认为可以使用这种方法,请将以下代码放在 Sheet 模块上,然后右键单击 Sheet 选项卡 --> 查看代码并粘贴下面给出的代码进入打开的代码 window.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim oval
If Target.Column = Range("BR1").Column And Target.Row > 1 Then
Cancel = True
oval = Target.Value
If IsNumeric(oval) Then
Target.Value = oval + 1
End If
End If
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim oval
If Target.Column = Range("BR1").Column And Target.Row > 1 Then
Cancel = True
oval = Target.Offset(0, 1).Value
If IsNumeric(oval) Then
Target.Offset(0, 1).Value = oval + 1
End If
End If
End Sub