从Excel启动虚拟机
问题描述:
我想从Excel 2016启动虚拟机(Oracle VirtualBox)。我尝试使用此代码,但没有任何反应,甚至没有发生错误。从Excel启动虚拟机
Dim FileName As String
FileName = "D:\Program Files\Oracle\VirtualBox\VirtualBox.exe"" --comment ""PANT"" --startvm ""2c2e4312-6d7d-4892-8a8f-1471a4d2c79d"""
FileName = "cmd.exe /c " & FileName
Debug.Print FileName``
'End
Call Shell(FileName, vbNormalFocus)
任何建议???由于
答
你的线,说:
FileName = "D:\Program Files\Oracle\VirtualBox\VirtualBox.exe"" --comment ""PANT"" --startvm ""2c2e4312-6d7d-4892-8a8f-1471a4d2c79d"""
是创建其中包含字符的字符串变量:
D:\Program Files\Oracle\VirtualBox\VirtualBox.exe" --comment "PANT" --startvm "2c2e4312-6d7d-4892-8a8f-1471a4d2c79d"
您在这些字符的开始需要一个额外的双引号“附上“文件名,以便shell不会被”程序“和”文件“之间的空间所困惑。所以,你需要的字符串是:
"D:\Program Files\Oracle\VirtualBox\VirtualBox.exe" --comment "PANT" --startvm "2c2e4312-6d7d-4892-8a8f-1471a4d2c79d"
,并创造条件,是需要的代码:
FileName = """D:\Program Files\Oracle\VirtualBox\VirtualBox.exe"" --comment ""PANT"" --startvm ""2c2e4312-6d7d-4892-8a8f-1471a4d2c79d"""
尝试把领先的双引号在文件名的开始。 (在.exe之后你已经有一个了。)所以'FileName =“”“D:\ Program Files \ Oracle \ VirtualBox \ VirtualBox.exe”“--comment”“PANT”“--startvm”“2c2e4312 -6d7d-4892-8a8f-1471a4d2c79d“”“' – YowE3K
谢谢!有用!我也删除了“cmd.exe/c”。 –