2016-07-22 340 views
2

你好StackOverflow社區,VBA操縱IE瀏覽器:正確使用SendKeys不能等待

我有一個關於使用VBA操縱IE的問題。

該代碼是關於在網站的字段中寫入文本。在該領域編寫的唯一方法似乎是通過SendKeys(everything else failed)。這裏的問題是,我必須改變之間的格式(你可以用「點擊」命令,使其大膽見):

Application.SendKeys "Here is the first text", True 
IEApp.document.forms(0).elements(1).Click 
Application.SendKeys "Here is the second text", True 

可悲的是按計劃進行的代碼不起作用:連儘管我添加了「True」以確保它等待執行第二個命令,但它開始在第一個文本中間的某個位置寫入粗體。因此,我有想法使用

Application.Wait (Now + TimeValue("0:00:01")) 

等待,但它失去了應用的重點,我不能送我到底填寫表單。我的下一個想法是通過計算的東西之間不使用last命令延遲它:

c = 1000000 
For i = 1 To 100 
    c = c/7 
Next i 

這導致寫出來的第一個文本的一部分,然後改變了格式和下一個文本開始中斷第一一。

有人有想法嗎?

回答

0

嘗試

While IEapp.Busy 
doEvents 
Wend 
Application.Wait (Now + TimeValue("0:00:01")) 

在click事件之後

+0

歡迎[這麼]!僅有代碼的答案對其他人不太有用。請添加一些關於您的代碼的解釋,或者解決問題的方式。 – jpaugh

+0

可悲的是它也失去了重點,我不能把焦點放回去。 – Snovna

相關問題