VBA SendKeys |使用Excel VBA SendKeys方法的示例

Excel VBA SendKeys

VBA中的SendKeys 语言是一种用于将击键发送到活动窗口的方法,以便我们可以在此之后手动进行操作。每当我们使用字母作为键时,所有字母都必须使用小写字母。这是一种复杂的方法,建议仅在必要时和无法使用时使用

“ SendKeys”是需要理解的复杂主题之一。我们中没有多少人在VBA中使用此功能,但是拥有更多关于更多主题的知识总是一件好事。在本文中,我们将向您展示如何使用SendKeys函数。您可能会发现很难用一种实用的方法来多次重新阅读该文章,以快速,更好地学习。

句法

以下是vba SendKeys方法的语法。

键或字符串: 我们需要发送到活动应用程序的密钥的类型。

等待: 在这个论点中,我们可以使用两件事,即TRUE或FALSE

  • 真的 如果您希望excel等待分配的 按键 在将控制权返回给宏之前要进行处理。
  • 错误的 如果您忽略 等待 参数,这将是默认值。如果您选择FALSE,则excel将继续运行宏,而无需等待键被处理到活动窗口中。

我们在键盘上使用的常见键是 “ Ctrl,Shift和ALT”。因此,使用SendKeys方法时,我们需要将它们与特殊字符一起使用,下表显示了上述三个公共键的特殊字符。

其他按键具有不同的按键和字符,下表显示了每个按键的详细说明。

根据要求,我们可以使用上述任何键。通过一些实际示例,我们将向您展示使用SendKeys的方法。

使用Excel VBA SendKeys方法的示例

您可以在此处下载此VBA SendKeys Excel模板– VBA SendKeys Excel模板

范例#1

例如,查看下面的单元格值。

我们在三个单元格中都有值,在第一个单元格中,我们有一个“班加罗尔”值,对于这个单元格,有一个注释为“卡纳塔克邦首都”。

现在使用“ SendKeys”,我们尝试编辑此注释。

打开Excel工作表,然后转到可视化基本编辑器,启动VBA子过程。

代码:

 子Send_Keys_Example()结束子 

首先,我们需要选择评论单元格以编辑评论。因此,请使用代码RANGE(“ A1”)。选择

代码:

 Sub Send_Keys_Example()范围(“ A1”)。选择结束Sub 

选择单元格后,我们将执行编辑注释的操作。在这里,我们需要重新收集用于编辑注释的键盘快捷键。

为了编辑评论,我们使用快捷键 “ Shift + F2”.

如果按此键,它将编辑注释。

现在打开“ SendKeys”方法。

在SendKeys方法中,使用SHIFT键的字符为 “+” (加号),因此输入“ +”登录代码。

现在,加号用作SHIFT键,我们使用的下一个SHIFT键是F2键。每当我们使用功能键时,都需要用大括号括起来,因此请在大括号中输入功能键F2。

代码:

 Sub Send_Keys_Example()范围(“ A1”)。选择SendKeys“ + {F2}”结束子 

现在执行代码,看看我们得到了什么。

当我们尝试执行代码时,我们收到了如上所述的消息。我们需要牢记的关键事情之一是,我们无法在Visual Basic编辑器窗口中运行使用“ SendKeys”的宏。

我们需要从“宏”列表中运行代码。

首先关闭Visual Basic编辑器窗口。

转到“开发人员”选项卡,然后单击“宏”。

现在,将打开所有宏的列表,选择您需要运行的宏。我们的宏名称是“ Send_Keys_Example”,所以我将点击“运行”按钮。

您可以看到“编辑评论”选项已启用。

如您在上面看到的,它已分配了快捷键 SHIFT + F2 打开编辑评论选项。

范例#2

例如,如果您想通过SendKeys方法打开“选择性粘贴”窗口,我们也可以这样做。首先,我们需要复制某些单元格,然后使用SendKeys。

代码:

 Sub Send_Keys_Example1()Range(“ A1”)。Copy SendKeys“%es” End Sub 

选择您需要运行的宏,然后单击“运行”。

运行代码时,它将在粘贴特殊对话框下方打开。

要记住的事情

  • SendKeys将击键分配给活动的应用程序。
  • 此方法非常复杂,建议仅在必要时且在无法使用时才使用。
  • 每当我们使用字母作为键时,所有字母都必须使用小写字母。