0

我不知道这是否可能。我正在使用 Excel 并使用 VB 脚本。有没有办法检测是否同时按下了两个键以及它们是哪个键?那么如果是那些被按下的键,我可以使用 If/Then 语句来执行我需要执行的任何过程吗?

我知道如果我有类似组合框的东西,我可以使用 keydown 功能来检测按下的单个键,但这仅适用于一个键而不是两个键。另外,我没有使用组合框、文本框或其他任何东西。我严格使用单元格,所以似乎没有任何类似 keydown 的东西来检测甚至按下单个键。

同样,我需要它同时检测两个键被按下。我还希望以某种方式让它在工作簿级别检测到这一点,而不是每个单独的工作表,因为有几个工作表,并且希望这些按键能够从一张工作表到下一张工作表。

请让我知道这是否可能,但我觉得这是不可能的。

4

1 回答 1

2

道格,

感谢您的建议,因此我想通了一切。在这里,以防其他人发现这很有用:

    私有子 Workbook_Activate()

    '当工作簿处于活动状态时,它将在标准 Ctrl + C 的位置运行脚本。
    Application.onkey "^{c}", "ThisWorkbook.cCopy"

    结束子


    私有子 Workbook_Deactivate()

    '当另一个工作簿处于活动状态时,这将禁用此脚本,因此标准 Ctrl + C 将再次工作。
    应用程序.onkey "^{c}"

    结束子


    子 cCopy()

    '这是激活时运行的脚本。这仅用于测试目的。   
    Worksheets("Sites").Range("I1").Value2 = "Yes"

    结束子
于 2013-11-05T10:43:12.220 回答