2013-07-13 49 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對外部程序的功能沒有任何控制權,因此對其變量沒有任何控制權。

相關問題