2013-07-13 46 views
2

我想发送一个字符串变量到命令提示符使用vba excel。 我使用下面的代码: -如何使用vba excel将字符串变量发送到命令提示符?

code_name = "xyz.c" 
version = "def" 
label = "1XDFO" 
'open command prompt 
    Dim oWsc As Object 
    Set oWsc = CreateObject("WScript.Shell") 
    Dim oExec As Object 
'save config spec in a text file 
    Set oExec = oWsc.Exec("perl F:\My_work\hello_world.pl code_name version label") 
    While oExec.Status <> 1 ' Wait for process 
     Sleep 1000 
    Wend 

在呼吁Perl脚本在行 “oWsc.Exec(” perl的F:\ My_work \ hello_world.pl CODE_NAME版本标签 “)” 我想送原装字符串变量code_name,version,label的内容;但它发送变量名称,而不是内容;谁能帮我这个? 在此先感谢。

回答

2

外部脚本(Perl或任何其他脚本)如何理解您发送的内容是变量并读取其内容?你必须只发送内容:

Set oExec = oWsc.Exec("perl F:\My_work\hello_world.pl " & code_name & " " & version & " " & label) 

澄清1:VBA或.NET或任何其他微软的语言,不要“读里面的字符串变量”,像其他语言一样,PHP例如。澄清2:即使是一种能够读取字符串内部变量的语言,也无法管理“在其框架之外”所做的事情。如果您从外部程序中调用PHP脚本,则不能像现在这样调用它,因为PHP对外部程序的功能没有任何控制权,因此对其变量没有任何控制权。

相关问题