当我的代码文件放在名称中带有空格的文件夹中时,出现运行时错误“ -2147024894(80070002)”

时间:2019-10-09 16:42:22

标签: excel vba

当我将代码Excel文件放置在文件夹/目录中时,该文件夹/目录中的命名约定不起作用,并且无法正常工作并启动Web服务。但是,当我将代码Excel文件放在命名约定中有空格的文件夹中时,出现了运行时错误:

  

'-2147024894(80070002)。

请帮助

Sub InvokShellScript1()

Dim sApp As String
Dim var As Integer

sApp = ThisWorkbook.Path & "\protected\WSInvoke.bat   " & ThisWorkbook.Path & "\protected\Refresh.txt  " & ThisWorkbook.Path

Dim objShell As Object

   Set objShell = CreateObject("WScript.Shell")
   var = objShell.Run(sApp, 0, True)


End Sub

1 个答案:

答案 0 :(得分:0)

您需要在路径周围加引号,以便能够处理空格。尝试以下任一方法:

sApp = Chr $(34)&ThisWorkbook.Path&“ \ protected \ WSInvoke.bat”&Chr $(34)&“”&Chr $(34)&ThisWorkbook.Path&“ \ protected \ Refresh.txt “&Chr $(34)&”“&Chr $(34)&ThisWorkbook.Path&Chr $(34)

或Chr()不起作用:

sApp =“”“”&ThisWorkbook.Path&“ \ protected \ WSInvoke.bat”“”“”&ThisWorkbook.Path&“ \ protected \ Refresh.txt”“”“”&ThisWorkbook.Path&“” “”