程序设计思路是正确的,但使用SendKeys方法时,需要注意的是:该方法默认只对当前Active(激活)的窗口发送模拟按键动作。所以使用此方法时,需要先激活目标窗口到前端。其实在Excel中,可以直接使用Selecion.Copy,Selection.PasteSpecial来实现拷贝,粘贴的动作。 而在其它程序中,也可以使用Clipboard对象来在不同程序之间传递数据。
不如直接操作excel数据,直接用语句读取某个单元格,这样比较靠谱
用你的方法,可能是因为你点击了vbs文件后,活动窗口就不是excel了,所以复制不成功。建议你在vbs内设置一个延时,然后及时点击excel窗口,使它成为活动窗口。