Board logo

標題: [發問] VBA 執行ERP判斷問題 [打印本頁]

作者: msmplay    時間: 2022-9-5 20:48     標題: VBA 執行ERP判斷問題

[attach]35188[/attach]
[attach]35189[/attach]

想請教一個VBA執行ERP的問題,但因為只會使用抓取座標點選按鈕方式執行,所以目前碰到一個問題,就是如何判斷ERP執行畫面是否已跑完,進而可以執行下一步點選下載按鈕。

例如圖一是使用座標點選【O.列印】按鈕後,它會開始執行並顯示「電腦正在作業中,請稍候!」。圖二則是程式已執行完成並顯示下載選項【L.終端機印表】

想確認是否有辦法判斷【L.終端機印表】畫面是否已顯示,如此才能再繼續執行下一段VBA程序。

我目前是使用以下VBA等候時間執行下一段程序,但此作法經常太早或太久才執行導致失敗。

以上求解~~~~~~

Sub 下載ERP()
Dim RetVal
RetVal = Shell("Z:\AutoERP\AutoERP.exe", 3) '開啟ERP

Application.Wait Now + TimeValue("0:01:30") '等候1分30秒
SetCursorPos 220, 160 '移到座標位置
Application.Wait Now + TimeValue("0:00:1")
mouse_event &H2 Or &H4, 0, 0, 0, 0 '點選【L.終端機印表】按鈕

End Sub
作者: jackyq    時間: 2022-9-6 15:58

本帖最後由 jackyq 於 2022-9-6 16:05 編輯

(1) AutoERP.exe 計算完畢後 , 會自己關閉自己嗎?
(2) excel is 32 or 64 bits ?
作者: msmplay    時間: 2022-9-6 21:19

回復 2# jackyq


   計算完會自己關閉自己沒錯~~~   32bits~~~
   感謝~~~~~~~
作者: msmplay    時間: 2022-9-6 22:54

#If VBA7 Then
    Private Declare PtrSafe Function GetPixel Lib "gdi32" (ByVal hdc As LongPtr, ByVal x As Long, ByVal y As Long) As Long
    Private Declare PtrSafe Function GetCursorPos Lib "user32" (ByRef lpPoint As POINT) As LongPtr
    Private Declare PtrSafe Function GetWindowDC Lib "user32" (ByVal hwnd As LongPtr) As LongPtr
#Else
    Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
    Private Declare Function GetCursorPos Lib "user32" (ByRef lpPoint As POINT) As Long
    Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
#End If
Private Type POINT
    x As Long
    y As Long
End Type

Sub Picture1_Click()
    Dim pLocation As POINT
    Dim lColour As Long

    Dim lDC As Variant
    lDC = GetWindowDC(0)
    Call GetCursorPos(pLocation)
    lColour = GetPixel(lDC, pLocation.x, pLocation.y)
    Range("a1").Interior.Color = lColour
End Sub
--------------------------------------------------------------------------------

以上是網路大神幫忙提供的滑鼠游標抓色程式碼,但我不知道要怎麼改成判斷滑鼠游標位置,如果抓到什麼顏色時,就往下一步進行,不知道有沒大神可以幫忙改改呢
作者: jackyq    時間: 2022-9-6 23:24

see your message




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)