我想打开一个cmd.exe,然后执行几行代码。
我在网上搜索了一些例子。
我尝试修改的代码:
strToPrint = "Hello World!"
Shell "cmd.exe /K echo " & strToPrint, vbNormalFocus
I found 如何从VBA向命令窗口写入消息? https://stackoverflow.com/questions/34462989/how-to-write-message-to-command-window-from-vba
我尝试了多行编码,但这些行是在不同的命令窗口中执行的:
Sub CMD_VBA_Script()
Shell "cmd.exe /K echo Hello World!", vbNormalFocus
Shell "cmd.exe /K color 0a", vbNormalFocus
End Sub
我知道当我调用 Shell 两次时,它将执行两次。
我的目标是从 VBA 调用以下脚本:
@echo off
title Matrix
color 0a
mode 1000
:a
echo %random%%random%
goto a
如何在命令提示符下从 VBA 执行多行代码?
MyFile = "C:\cmdcode.bat"
fnum = FreeFile()
Open MyFile For Output As #fnum
Print #fnum, "@echo off"
Print #fnum, "title Matrix"
Print #fnum, "color 0a"
Print #fnum, "mode 1000"
Print #fnum, ""
Print #fnum, ":a"
Print #fnum, "echo %random%%random%"
Print #fnum, "goto a"
Close #fnum
' Run bat-file:
Shell MyFile, vbNormalFocus
' optional, remove bat-file:
Kill "C:\cmdcode.bat"
简而言之。您需要创建一个运行的bat 文件。
如果完成后不需要该bat文件,可以使用以下命令将其删除Kill
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)