我的问题相当简单:我需要将逻辑应用于Excel中的删除按钮。在a related question I asked for means to clear cells in a pivot table中,现在意识到这可能不是正确的方法,这是我正在考虑的另一种选择。不幸的是,我承认自己对Visual Basic没什么经验,而且这个任务正在证明是一个挑战(非常令人惊讶)。
是否可以在Excel中捕获(如监听)删除键并在按下时在VBA中触发子程序?
我很感激所有的投入!谢谢!
答案 0 :(得分:3)
是
您使用Application.Onkey
将代码分配给键
如果你 (1)将此代码添加到包含您的数据透视表的工作表模块中(右键单击工作表选项卡,查看代码并通过以下代码)
此代码激活,然后在用户输入时取消激活拦截,然后离开此特定工作表:
Private Sub Worksheet_Activate()
Application.OnKey "{DELETE}", "Intercept"
End Sub
Private Sub Worksheet_Deactivate()
Application.OnKey "{DELETE}"
End Sub
(2)将此代码添加到常规模块
Sub Intercept()
MsgBox "user just pressed delete"
End Sub
然后该工作表上的删除将被困,用户会收到一条消息