📅  最后修改于: 2023-12-03 15:08:24.407000             🧑  作者: Mango
在 VBA 中打开命令提示符 (CMD) 可以帮助我们执行一些需要使用命令行的操作。下面将介绍如何使用 VBA 打开 CMD。
我们可以使用 VBA 的 Shell 函数打开 CMD。Shell 函数可以执行系统命令并返回执行结果。
Sub OpenCMD()
Shell "cmd.exe"
End Sub
执行上述代码后,CMD 窗口将打开并等待操作。当我们手动关闭 CMD 窗口时,才会继续执行 VBA 代码。
我们也可以通过 VBA 向打开的 CMD 窗口输入命令。通过将命令作为 Shell 函数的参数传递,我们可以在 CMD 窗口中执行命令。
Sub RunCommandInCMD()
Shell "cmd.exe /k dir C:\", vbNormalFocus
End Sub
执行上述代码后,CMD 窗口将打开并显示 C 盘的目录列表。
默认情况下,打开的 CMD 窗口将一直保持打开状态,直到我们手动关闭它。我们可以通过向 CMD 窗口发送一个由 exit 命令组成的字符串,从而实现关闭 CMD 窗口的任务。
Sub CloseCMD()
Dim cmdId As Double
cmdId = Shell("cmd.exe", vbNormalFocus)
SendKeys "exit" & vbCrLf
Application.Wait Now + TimeValue("0:00:01")
AppActivate cmdId
Application.Wait Now + TimeValue("0:00:01")
SendKeys "%{F4}"
End Sub
上述代码中,我们首先使用 Shell 函数打开 CMD 窗口,并记录下窗口的句柄(cmdId)。然后使用 SendKeys 函数向 CMD 窗口发送 exit 命令。Wait 函数用于等待命令执行完成。最后使用 AppActivate 函数将 CMD 窗口激活,使用 SendKeys 函数发送 Alt + F4 键盘组合键来关闭 CMD 窗口。
以上就是如何使用 VBA 打开 CMD 的介绍。