Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从excel运行c#控制台应用程序并等待应用程序完成_C#_.net_Vba_Excel - Fatal编程技术网

从excel运行c#控制台应用程序并等待应用程序完成

从excel运行c#控制台应用程序并等待应用程序完成,c#,.net,vba,excel,C#,.net,Vba,Excel,我正在使用下面的代码行从Excel中运行一个c#控制台应用程序。代码运行良好。运行该过程大约需要20秒。我想知道如何让我的vba代码等待c#应用程序完成,然后继续执行下面这行代码 我不想使用暂停或类似功能 Dim id As Integer id=Shell("""C:\MyFolder\bin\Debug\MyApp.exe"" /PARA1 " & p1 & " /PARA2 " & p2, vbNormalFocus) 您可以尝试以下代码(灵感来源于): 看看

我正在使用下面的代码行从Excel中运行一个c#控制台应用程序。代码运行良好。运行该过程大约需要20秒。我想知道如何让我的vba代码等待c#应用程序完成,然后继续执行下面这行代码

我不想使用暂停或类似功能

 Dim id As Integer
 id=Shell("""C:\MyFolder\bin\Debug\MyApp.exe"" /PARA1 " & p1 & " /PARA2 " & p2, vbNormalFocus)
您可以尝试以下代码(灵感来源于):


看看这个问题看看这个帖子:谢谢,伙计们,两个都有用
Dim id As Integer
Dim wsh As Object
Set wsh = VBA.CreateObject("WScript.Shell")
Dim waitOnReturn As Boolean: waitOnReturn = True
Dim windowStyle As Integer: windowStyle = 1

id = wsh.Run("""C:\MyFolder\bin\Debug\MyApp.exe"" /PARA1 " & p1 & " /PARA2 " & p2, windowStyle, waitOnReturn)