0
ボタンクリックでマクロを作成しています。このボタンをクリックすると、3つの機能が次々に実行されます。Excel VBA:関数が同期的に実行されていません
コードは次のとおりです。RUNCODEため
Sub submit()
ActiveWorkbook.Save
Call RUnCode
Call copy_paste_sheet
Call cumulative_percent
End Sub
コード:
Private Sub RUnCode()
Dim pyPrgm As String, pyScript As String
pyPrgm = "python "
pyScript = "C:\Users\Kishan\Desktop\script.py"
Call Shell(pyPrgm & pyScript, vbMinimizedNoFocus)
End Sub
機能RUNCODEは、コマンドラインからPythonスクリプトを実行しています。実行には時間がかかりますし、copy_paste_sheetとcumulative_percent関数のためにPythonスクリプトからのデータが必要です(両方の関数は単純なExcelシート操作です)。
ただし、RUnCodeが終了する前に、他の2つの関数が実行されているため、間違ったデータが処理される問題があります。
これを手伝ってもらえますか?前もって感謝します。
ルック。私は、次の部分を実行する前にスクリプトが完了するまでコードを待たせる方法があると信じています – RGA
'RUnCode'サブルーチンにコードを投稿できますか? –
また、「WshShell」https://msdn.microsoft.com/en-us/library/aew9yb99とhttp://stackoverflow.com/questions/8902022/wait-for-shell-to-finish-then-フォーマットセル –