以下只是測試步驟,主要發生問題如下:
Sub TEST()
Set myIE = CreateObject("InternetExplorer.Application")
With myIE
.Visible = True
.Navigate "https://ithelp.ithome.com.tw/" '進入麻辣家族討論區
Do While .Busy Or .readyState <> 4: DoEvents: Loop
.document.all.notification_count.Click '點選進入我的帖子,但開啟網頁時是自動開啟一個新的分頁,而且畫面不會自動切換到新分頁頁籤(畫面仍停留在原頁面)
Application.Wait Now + TimeValue("0:00:2") '等待2秒
.Navigate "http://forum.twbts.com/my.php?item=threads" '進入我的帖子(使用原頁面轉換到我的帖子,非切換到分頁)
** Application.Wait Now + TimeValue("0:00:2") '等待2秒
.document.all.mn_viewthread_1.Click '點選進入論壇版規**
End With
End Sub
問題1. 因為公司使用IE8,每人電腦速度快慢不一,以下執行結果有人電腦慢就會跑到最後一步點選進入論壇版規時發生錯誤,因為上一步進入我的帖子網頁根本還沒跑出來(還在轉),等待2秒對他們而言算太快,但對電腦快的人如果等待2秒以上又覺得太慢
想請問有什麼辦法可以自動偵測網頁是否已運行完成再執行下一步嗎?而不是用固定秒數計時。
問題2. 因為點選進入我的帖子時,公司的IE8開啟網頁時是自動開啟一個新的分頁,但畫面不會自動切換到新分頁頁籤(畫面仍停留在原頁面)
想請問有什麼方式可以在點選進入我的帖子後畫面自動切換到新分頁頁籤,醬也就不用再多一步 .Navigate "http://forum.twbts.com/my.php?item=threads" '進入我的帖子(使用原頁面轉換到我的帖子,非切換到分頁) 了