【问题标题】:How to run code with a keystroke (not button)?如何通过按键(不是按钮)运行代码?
【发布时间】:2016-10-07 18:16:03
【问题描述】:

我想在输入特定组合键时将单元格的值加 1。

我使用了录制宏,但是当我编辑该代码时,它没有显示它如何将宏绑定到按键。

这是我的代码,不起作用

Sub IncTest2()
    ActiveCell.Value = ActiveCell.Value + 1
End Sub

Sub KeyTest()
    Application.OnKey "^a", "IncTest2"
End Sub

它应该使用“Control+a”将活动单元格加 1,但它使用标准的“Control+a”键盘快捷键。

【问题讨论】:

  • 在此处查看第二个答案:stackoverflow.com/questions/9818047/… 它会引导您了解如何将键盘快捷键分配给现有宏。
  • 由于您有 Sub IncTest2() 和 Excel VBA 默认程序为公共,您可以单击宏->查看宏,选择宏并单击选项,您将在不写入的情况下将宏绑定到您的密钥任何代码。

标签: excel vba


【解决方案1】:

试试这个,看看它是否适合你。在 ThisWorkBook 代码中,添加下面的 sub。

Sub Workbook_Activate()
    Application.OnKey "^a", "IncrementByeOne"
End Sub

在 ThisWorkBook 的模块中,添加下面的宏。

Sub IncrementByeOne()

    With ThisWorkbook.ActiveSheet
        ActiveCell.Value = ActiveCell.Value + 1
    End With

End Sub

【讨论】:

  • 您是否在打开时运行了密钥测试?
猜你喜欢
  • 1970-01-01
  • 2012-06-06
  • 2014-12-05
  • 2012-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多