我從網站https://excelchamps.com/blog/vba-code-search-google-chrome/找到了 MS Word 的宏(如下)
Sub GoogleSearch()
Dim chromePath As String
Dim search_string As String
Dim query As String
query = InputBox("Please enter the keywords", "Google Search")
search_string = query
search_string = Replace(search_string, " ", " ")
chromePath = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Shell (chromePath & " -url http://www.google.com/search?hl=en&q=" & search_string)
End Sub
預計:我按下宏按鈕,彈出輸入框,然后輸入關鍵字,它會自動打開 Chrome 搜索這些關鍵字。
如果我誤按了宏按鈕,然后按“取消”或“X”關閉輸入框,Chrome 將不會自動打開。
我在代碼中間添加了 if msgboxresult = "" then exit sub。當我打開輸入框并關閉它時,Chrome 沒有打開。但是無論我在輸入框中輸入什么,Chrome 都不會打開,也不會進行搜索。
當我不輸入任何內容并關閉輸入框時,有誰知道應該添加哪些代碼才能使其成為 End Sub?
uj5u.com熱心網友回復:
雖然(StrPtr(query) = 0)會指示用戶按下了取消,但當用戶將搜索詞留空并單擊“確定”時,它不會捕捉到。
撰寫例程的更好方法是忽略用戶是否取消并檢查您是否有搜索詞要 google。query在繼續啟動 chrome 之前簡單地檢查它不是零長度的字串將捕捉到這兩種可能性。
Sub GoogleSearch()
Const chromePath As String = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Dim query As String
query = InputBox("Please enter the keywords", "Google Search")
If Not query = vbNullString Then
query = Replace(query, " ", " ")
Shell (chromePath & " -url http://www.google.com/search?hl=en&q=" & query)
End If
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/518025.html
標籤:vbams-word
上一篇:VBA洗掉5個空格后的所有內容
