在進入本篇文章之前,如果還不知道該怎麼使用VBA開啟Chrome的話,可以先閱讀網站內的另外一篇內容。
文章內說明如何使用VBA開啟,當然您也可以使用XMLHttpRequest物件或者Selenium 撰寫爬蟲的程式,但這不在本次的討論範圍內。
本次要討論的是如果登入者有多人的情況該怎麼處理。在文章內提供一個簡單的方法供大家參考。
目錄
問題說明
前陣子有網友問我說,在看了 開啟Chrome或Edge前往指定網址 這篇文章後,還有個問題,那就是開啟的時候會先進入多個帳號,例如下圖的情況。
跳出使用者畫面是因為您設定了chrome的使用者設定檔, 如果您還是要使用這個功能關於這個問題,在這邊提供一個方法給大家參考。
問題解決
解決方式 :
建立一個人員的桌面捷徑,透過VBA去開啟桌面人員的捷徑即可。
那麼具體來說應該要怎麼做呢?
1. 步驟1 : 建立人員的捷徑,這裡假設以人員2進行設定
在右上方有個人員的小圖案,會有一個像筆一樣的圖案,如下圖圈起來的位置。
點了之後會出現像下圖一樣的畫面,接著往下拉,最底下會看到,建立桌面捷徑的選項。
接著在建立桌面捷徑的地方點一下,就會在桌面建立捷徑了。
2. 步驟2 : 取得捷徑的路徑
接著複製目標內的路徑,路徑大概像這樣,
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 2"
在裝置上建立桌面捷徑,之後要透過vba啟動這個捷徑。根據您要啟動的人員,路徑也會不同。
3. 步驟3 : 程式撰寫
程式碼
Sub 打開Chrome前往指定網站()
'定義為自由型態變數 edge
Dim Chrome As Variant
'使用CreateObject函數
Set Chrome = CreateObject("WScript.shell")
' 使用Run方法執行 並同時指定要開啟的url
'Chrome.Run ("chrome.exe -url " & "https://tw.yahoo.com/")
Chrome.exec "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --profile-directory=""Profile 2"" " & "https://tw.yahoo.com/"
' 釋放物件變數
Set Chrome = Nothing
End Sub
在開啟Chrome或Edge前往指定網址 文章內,範例程式中
把run方法改成以下的方式
Chrome.exec "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --profile-directory=""Profile 2"" " & "https://tw.yahoo.com/"
注意上述的方式中,這裡 2""空格" 要有空格, 不然會沒辦法執行。
透過以上的方法就可以使用VBA開啟以其他人員帳號登入的網頁囉。
也許不一定每一個人都會有同樣的需求,如果您也遇到相同的問題,不妨試試這個方法喔。