我认为SendKeys会将键击发送到活动窗口。但是,当我激活一个应用程序时,我无法输入SendKeys。
下面是一些代码和我正在尝试做的解释:
' Inputs
InputFile=InputBox("Enter input filename (.xls extension assumed)")
Set oShell = WScript.CreateObject ("WScript.Shell")
CurrentDirectory = oShell.CurrentDirectory & "\"
' Open spreadsheet input file
Set xlApp = CreateObject("Excel.Application")
set xlBook = xlApp.WorkBooks.Open(CurrentDirectory&InputFile&".xls")
set xlSht = xlApp.activesheet
xlApp.Visible = True
oShell.AppActivate(InputFile&".xls")
' Select data
xlSht.Range("C2").Select
InputData = xlApp.ActiveCell.value
' Run Application.exe
oShell.run(CurrentDirectory & "Application.exe")
' Write data
oShell.AppActivate("Application.exe")
Wscript.Sleep 1000
oShell.Sendkeys "Typed data"
基本上我想打开Excel工作表并将值复制到应用程序。我已经执行了检查,除最后一行外,一切正常。应用程序窗口处于活动状态 - 如果我开始键入,那么它将在应用程序窗口中键入 - 但SendKeys命令不起作用。
SendKeys不能用于某些应用程序吗?正如我所说,我认为他们只是在活动窗口中复制了键盘输入,无论是什么。