2016-05-06 59 views
0

有什麼方法可以檢查,直到文件存在於VBA中。如何檢查,直到文件存在

我想要做的是,使vba調用異步。

現在經過我跑

wshShell.Run """" & SFilename & """" & s 

我要檢查到文件存在這樣

Wait until fso.fileexists("file") 
    Msgbox "file is now available" 
End wait!!! 

有在VBA什麼辦法?

我正在使用word vba。

回答

1

你可以這樣說:

Do 

    If fso.FileExists("file") Then 

     Exit Do 
    End If 

    DoEvents 'Prevents Excel from being unresponsive 
    Application.Wait Now + TimeValue("0:00:01") 'wait for one second 
Loop 

MsgBox "file available", vbOKOnly, "" 

雖然這肯定不是最好的方法


而不是使用Application.Wait,您可以使用睡眠:

Sleep 1000 '1 Second 

但您需要將其添加到您的代碼才能使用它:

#If VBA7 Then 
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr) 'For 64 Bit Systems 
#Else 
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds as Long) 'For 32 Bit Systems 
#End If 
+2

謝謝。 「可憐的叔叔比沒有叔叔好」 – Rahul

+0

我擅長它的工作。但是,在.wait方法或數據未找到時顯示錯誤。 – Rahul

+0

檢查編輯答案 – gizlmo