在VBA中测下SENDKEYS的用法,发现了个问题:
for i=2 to 3
Worksheets("Sheet1").Cells(5, 6).Select
SendKeys Worksheets("Sheet2").Cells(i, 21)
昨天运行时出现的问题是他发送的数值不是发送在我要的 Worksheets("Sheet1").Cells(5, 6)里面,而是在VBA里,晕吧
昨天有事,今天再来运行一下,总是又不一样了,发送的位置倒是对了,就是他发送了二次数据到 Worksheets("Sheet1").Cells(5, 6)里,且数据不是最后的Worksheets("Sheet2").Cells(3, 21)的二次重复,而是Worksheets("Sheet2").Cells(2, 21)+Worksheets("Sheet2").Cells(3, 21),换四次循环,这次是发送了四次数据到表sheet1里,没门,又换了下语句:
Worksheets("Sheet1").Cells(5, 6).Select
Worksheets("Sheet1").Cells(5, 6) = ""
SendKeys Worksheets("Sheet2").Cells(i, 21)
还是出现上述情况,先清空要输入数据的单元格也不中,这是什么问题??
for i=2 to 3
Worksheets("Sheet1").Cells(5, 6).Select
SendKeys Worksheets("Sheet2").Cells(i, 21)
昨天运行时出现的问题是他发送的数值不是发送在我要的 Worksheets("Sheet1").Cells(5, 6)里面,而是在VBA里,晕吧
昨天有事,今天再来运行一下,总是又不一样了,发送的位置倒是对了,就是他发送了二次数据到 Worksheets("Sheet1").Cells(5, 6)里,且数据不是最后的Worksheets("Sheet2").Cells(3, 21)的二次重复,而是Worksheets("Sheet2").Cells(2, 21)+Worksheets("Sheet2").Cells(3, 21),换四次循环,这次是发送了四次数据到表sheet1里,没门,又换了下语句:
Worksheets("Sheet1").Cells(5, 6).Select
Worksheets("Sheet1").Cells(5, 6) = ""
SendKeys Worksheets("Sheet2").Cells(i, 21)
还是出现上述情况,先清空要输入数据的单元格也不中,这是什么问题??
将完整代码贴出来看看。
for i=2 to 3
Worksheets("Sheet1").Cells(1, 2)=Worksheets("Sheet2").Cells(i, 2)
Worksheets("Sheet1").Cells(1, 4)=Worksheets("Sheet2").Cells(i, 6)
.......................全是以上内容的代码,以前使用完全正确,为了试下SENDKEYS能不能从EXCELL的表中提取数据再发送,我就把后面的等待和打印的命令全注释了,再加上这二句:
Worksheets("Sheet1").Cells(5, 6).Select
SendKeys Worksheets("Sheet2").Cells(i, 21)
结果就出现上诉问题了
有点儿不可思议啊
Sub sndkeys()
Worksheets("Sheet1").Activate
For i = 2 To 3
Worksheets("Sheet1").Cells(5, 6).Select
SendKeys Worksheets("Sheet2").Cells(i, 21) & "~{UP}"
Next i
End Sub
Sub sndkeys()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Cells(5, 6).Select
For i = 2 To 3
SendKeys Worksheets("Sheet2").Cells(i, 21) & "~{UP}"
Next i
End Sub
注意这几个字:
“活动窗口”
& "~{UP}"
为什么要加个回车和上翻键,用意是什么?