excel - vba 等待命令提示符完成?
问题描述
我有谁知道如何在继续之前等待 shell 命令完成运行?我的代码抛出“运行时错误'1004':抱歉,我们找不到 PC_one.csv。它是否可能被移动、重命名或删除”。该文件被创建并给出该错误。如果我再次运行子程序,它会打开文件。
Dim sCommandToRun As String
sCommandToRun = "systeminfo /fo csv > PC_one.csv"
Call Shell("cmd.exe /S /C" & sCommandToRun, vbHide)
Workbooks.Open ("PC_one.csv")
解决方案
指定文件夹和文件名。
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
推荐阅读
- laravel - Laravel 8 速率限制器缓存键
- python-3.x - 如何将“groupby([pd.Grouper(key='RENTAL_DATE', freq='D'), 'RENTED']).FEE.sum()”结果转换为矩阵
- html - 即使在使用“Pro”套件并且字体系列已更改为“Font Awesome 5 Pro”后,Font Awesome 仍将图标显示为正方形
- python - IndexError:列表索引超出范围使用谷歌视觉
- scala - ScalaMock :期望在一定公差范围内的 Double
- python - 我需要将python文件放在哪里才能全局访问?(蟒蛇)
- xml - 有没有像golang这样的xml序列化器
- flutter - 我只是想创建一个带有圆形按钮的登录,但它一直要求输入密钥。请看附图
- notepad++ - 在每行的空格之间添加逗号
- python-3.x - 如何将熊猫数据帧的结果/子集发送到我的 csv 文件和 sql db