Vba 工作表上的多个切换按钮可触发宏

Vba 工作表上的多个切换按钮可触发宏,vba,excel,Vba,Excel,我有20个切换按钮,如 我正试图让application.onkey触发它们,如: Application.OnKey "%a", "Sheet1.ToggleButton1_Click" Application.OnKey "%b", "Sheet1.ToggleButton2_Click" 使用Check_all for当所有按钮都为True时,它将执行以下操作,即在触发另一个宏之前将切换按钮恢复为False状态 但我似乎无法拿到申请表。我现在完全迷路了 这是一个连接到可编程USB按钮的系

我有20个切换按钮,如

我正试图让application.onkey触发它们,如:

Application.OnKey "%a", "Sheet1.ToggleButton1_Click"
Application.OnKey "%b", "Sheet1.ToggleButton2_Click"
使用Check_all for当所有按钮都为True时,它将执行以下操作,即在触发另一个宏之前将切换按钮恢复为False状态

但我似乎无法拿到申请表。我现在完全迷路了


这是一个连接到可编程USB按钮的系统,我真的依靠onkey来工作,除非有更好的方法???

您可以在excel中将宏指定给快捷键。您需要模拟切换按钮,如下所示:

Sub CtrlShiftA()
ToggleButton1.Value = Not ToggleButton1.Value
End Sub
然后,让您的切换按钮分为您喜欢的:

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
    ToggleButton1.BackColor = vbGreen
Else
    ToggleButton1.BackColor = vbRed
End If
End Sub
然后在“查看->宏->查看宏”下,单击“选项…”:

按Shift+A可将Ctrl+Shift+A作为快捷键:


现在单击“确定”,享受shurtcut键。

您可以在excel中将宏指定给快捷键。您需要模拟切换按钮,如下所示:

Sub CtrlShiftA()
ToggleButton1.Value = Not ToggleButton1.Value
End Sub
然后,让您的切换按钮分为您喜欢的:

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
    ToggleButton1.BackColor = vbGreen
Else
    ToggleButton1.BackColor = vbRed
End If
End Sub
然后在“查看->宏->查看宏”下,单击“选项…”:

按Shift+A可将Ctrl+Shift+A作为快捷键:


现在单击“确定”,享受shurtcut键。

如果使用CTRL+b或CTRL+SHIFT+b作为快捷键,可以吗?是的,我就是无法使用任何组合:如果使用CTRL+b或CTRL+SHIFT+b作为快捷键,可以吗?是的,我就是无法使用任何组合:就是这样!!!!!老兄,我一直在努力,不断遇到问题和价值观冲突,这让我走得更深,哇!!非常感谢你@杰里米,非常欢迎你。如果回答了你的问题,请接受。好的解决方案。可以简化子控件Shift A:ToggleButton1.Value=不ToggleButton1.Value:结束子控件就是这样!!!!!老兄,我一直在努力,不断遇到问题和价值观冲突,这让我走得更深,哇!!非常感谢你@杰里米,非常欢迎你。如果回答了你的问题,请接受。好的解决方案。可以简化子控件Shift A:ToggleButton1.值=不ToggleButton1.值:结束子控件
Sub CtrlShiftA()
ToggleButton1.Value = Not ToggleButton1.Value
End Sub
Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
    ToggleButton1.BackColor = vbGreen
Else
    ToggleButton1.BackColor = vbRed
End If
End Sub