【问题标题】:vba wait for command prompt to finish?vba 等待命令提示符完成?
【发布时间】:2021-08-19 14:30:02
【问题描述】:

我有谁知道如何在继续之前等待 shell 命令完成运行?我的代码抛出“运行时错误'1004':抱歉,我们找不到 PC_one.csv。它是否可能被移动、重命名或删除”。该文件被创建并给出该错误。如果我再次运行 sub,它会打开文件。

Dim sCommandToRun As String
sCommandToRun = "systeminfo /fo csv > PC_one.csv"
Call Shell("cmd.exe /S /C" & sCommandToRun, vbHide)
Workbooks.Open ("PC_one.csv")

【问题讨论】:

标签: excel vba shell command-prompt wait


【解决方案1】:

指定文件夹和文件名。

Option Explicit

Sub info()

   Dim wsh As Object, sCommandToRun As String, Filename As String
   Set wsh = VBA.CreateObject("WScript.Shell")

   Filename = ThisWorkbook.Path & "\PC_one.csv"
   sCommandToRun = "cmd.exe /S /C systeminfo /fo CSV > """ & Filename & """"
   'Debug.Print sCommandToRun

   wsh.Run sCommandToRun, 1, 1
   Workbooks.Open Filename

   MsgBox "Done"
  
End Sub

【讨论】:

    猜你喜欢
    • 2011-10-20
    • 2014-12-26
    • 1970-01-01
    • 1970-01-01
    • 2013-04-03
    • 2015-06-13
    • 1970-01-01
    • 2012-07-21
    • 2011-09-20
    相关资源
    最近更新 更多