既にご指摘のとおりかと思います。
Copyではなく、VBAの対応するメソッドやステートメントがないような
他のアプリケーションの実行などであれば、
次のような方法もありますので、参考までにメモしておきます。
今後の参考にしてください。
WScript.Shell のRunメソッドを使い、その3番目の引数にTrueをセットすると、
同期処理(その処理が終わるのを待って、次の行に制御が進む)が行われます。
【参考】
https://atmarkit.itmedia.co.jp/ait/articles/0709/12/news125.html
Sub test()
Dim WB As Workbook, WS As Worksheet
Dim objShell As Object
Set objShell = CreateObject("WScript.Shell")
objShell.Run "cmd /c copy.bat", , True
Set WB = Workbooks.Open(Filename:="C:test.xlsx")
Set WS = WB.Worksheets("Sheet1")
End Sub