gpt4 book ai didi

excel - VBA:如何将此 cmd 命令转换为 VBA Shell 代码

转载 作者:行者123 更新时间:2023-12-04 22:21:25 24 4
gpt4 key购买 nike

我想在 VBA 代码中使用下面的命令行,命令是递归地获取所有 .pdf 和 .docx 文件并在 CMD 中运行得很好

dir /s *.pdf *.docx
现在在 VBA 中,具有以下内容,它以递归方式打印出所有文件,而不是指定的扩展名
Sub Run()
Debug.Print ShellRun("cmd.exe /c dir c:\ /s *.pdf *.docx")
End Sub

Public Function ShellRun(sCmd As String) As String
Dim oShell As Object
Set oShell = CreateObject("WScript.Shell")
Dim oExec As Object
Dim oOutput As Object
Set oExec = oShell.Exec(sCmd)

ShellRun = oExec.StdOut.ReadAll
End Function

最佳答案

尝试这个

Debug.Print ShellRun("cmd.exe /c dir /s c:\*.pdf c:\*.docx")
编辑:关注评论
您需要运行 dir /s PATH\*.pdf PATH\*.docx \* 之间没有空格.还有 PATH应该为 pdf 和 docx 重复。但是,在您的代码中,您有空格,并且还有 c:\ 的位置。和旗帜 /s交换了。

关于excel - VBA:如何将此 cmd 命令转换为 VBA Shell 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62959959/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com