因為已經有前人寫好的按鈕觸發VBA,但是掛載RPA的電腦是靠遠端桌面連線無螢幕,使用DA指令await api.clickCrop(‘crop-xxx.png’, 0, 0, {confidence:0.95, wait:1000})有時都偵測不到,所以想問有直接觸發EXCEL VBA的功能可以使用嗎?謝謝
clickCrop 偵測失敗原因
clickCrop 有掃描的動作所以偵測不到很有可能是目標產生變化沒注意到例如:
- 被自己的游標擋住
- app 有無 focus 的狀態下顏色有淡入、淡出的差異
呼叫 VBA macro
- 如果要呼叫 VBA macro 的話要使用 PowerShell module,Script 怎麼寫可以參考 Jimmy 在這篇討論串提供的投影片教學。
- 呼叫的指令為
$excel.run("Macro", "arg1", "arg2", ...)
不過有些前置工作(參考 Jimmy 提供的文件)
1 Like
因為平常RPA是掛在一台無螢幕的主機上,平常都是使用Windows內鍵遠端連線桌面,意思是如果有接螢幕就會發現畫面會保持在鎖定畫面
測試過在遠端連線桌面時執行RPA會正常執行,但是只要沒有人連線的狀態下就會出錯
errorMsg:
400
wap fail: TypeError: Cannot read properties of undefined (reading ‘id’)
#4
{“command”:“wap”,“url”:“https://emily.tips/page/wap/desktop",“code”:"await api.clickCrop(‘crop-xxx.png’, 0, 0, {confidence:0.95, wait:1000})\r\nawait api.clickCrop(‘crop-xxx.png’, 0, 0, {confidence:0.95, wait:1000})”,“crops”:[“crop-xxx.png”,“crop-xxx.png”,“crop-xxx.png”]}
#3
{“command”:“load”,“url”:“https://emily.tips/page/wap/desktop”}
#2
{“command”:“navigate”,“url”:“https://emily.tips/page/wap/desktop”}
…
是不是只要電腦是鎖定狀態就不能用DA的功能呢?
1 Like