安全性 请避免使用 SendKeys 语句或带敏感或机密信息的 AutoKeys 宏。恶意用户可能截取键击,这样将危及计算机和数据的安全。
可以使用 SendKeys 操作将键击直接发送到 Microsoft Access 或活动的基于 Windows 的应用程序。
SendKeys 操作有以下参数。
操作参数 |
说明 |
键击 |
需要 Access 或应用程序处理的键击。请在“宏”窗口的“操作参数”部分内的“键击”框中输入键击。可以键入最多 255 个字符。这是必需参数。 |
等待 |
指定宏是否应当暂停直到键击已被处理。单击“是”(暂停)或“否”(不暂停)。默认值是“否”。 |
Access 可以处理它通过 SendKeys 操作接收到的键击,其处理方式与在 Access 窗口中直接键入它们完全相同。
要指定键击,请使用与 SendKeys 语句相同的语法。
注释 如果键击参数包含不正确的语法、拼写错误的文本、或其他对接受键击的窗口不适当的值,则可能出现错误。
可以使用此操作在对话框中输入信息,尤其是在不想中断宏以手动响应对话框的情况下。某些 Access 操作(比如 PrintOut 和 FindRecord)可以自动从某些频繁使用的对话框中选择选项。可以使用 SendKeys 操作从不常用的对话框中选择选项。
注释
? | 由于对话框会将宏挂起,所以必须将 SendKeys 操作放在导致对话框打开的操作的前面,并将“等待”参数设置为“否”。 |
? | 由于键击被传递到 Access 或另一个应用程序的时机是不可预料的,因此,建议您如果有其他方法(比如 FindRecord 操作)可以用来完成预定任务,则最好使用该方法,而不要使用 SendKeys 操作来填充对话框中的选项。 |
如果要将超过 255 个字符发送给 Access 或另一个基于 Windows 的应用程序,则可以在一个宏中连续使用几个 SendKeys 操作。
使用 SendKeys 操作发送键击将触发适当的 KeyDown、KeyUp 和 KeyPress 事件。如果发送的是非 ANSI 键击(比如功能键),则不会触发 KeyPress 事件。
此操作在 Microsoft Visual Basic 中不可用。在 VB 中,请使用 SendKeys 语句。