簡體   English   中英

AppActivate返回excel

[英]AppActivate to return to excel

我正在編寫代碼從網站下載文件,但我必須使用Chrome。 我使用shell命令在所需的URL中打開Goog​​le Chrome,在shell命令之后我嘗試使用AppActivate命令,但它無法正常工作。

命令如下

Sub DL(URL as string)

    Shell ("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe -url URL")
    AppActivate ("MicroSoft Excel - SIEVE")

End Sub

SIEVE是我工作簿的名稱。 我嘗試過只使用MicroSoft Excel,Excel和其他組合,但只能使用MicroSoft Excel和Microsoft Excel - SIEVE我沒有收到錯誤消息。

誰能幫我?

我認為您不需要包含工作簿的名稱。

嘗試這個:

Sub DL(URL As String)

Shell ("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe -url URL")
AppActivate "MicroSoft Excel"

End Sub

如果您打開了多個工作簿並且查看了錯誤的工作簿,則可以始終在AppActivate之前插入:

Workbooks("SIEVE").Activate

編輯

AppActivate似乎不起作用的原因是因為它太快了。 代碼在Chrome有機會完全打開之前執行,因此 AppActivate發生 Chrome會被激活。 我看到你的最佳選擇是使用Application.Wait()並等到Chrome加載。 像這樣的東西:

Sub DL(URL As String)
    Shell ("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe -url URL")

    Application.Wait (Now + TimeValue("0:00:10")) '<~~ Waits ten seconds.

    AppActivate "MicroSoft Excel"
End Sub

你可以試試這個:

On Error Resume Next
**AppActivate Application.Caption**
On Error GoTo 0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM