我正在尝试运行需要参数的脚本,并且无法弄清楚如何将脚本的名称与参数连接起来。我正在使用Visual Basic for Excel 2011,我正在尝试使用MacScript运行该脚本。例如,我的脚本被称为do_a_bunch_of_stuff.sh
要运行脚本,我需要传递几个变量(参数);例如string1
和string2
。如果我在VB中使用以下脚本,那么一切正常:
MacScript ("do shell script ""/Users/mikesmith/Desktop/directory2/do_a_bunch_of_stuff.sh string1 string2"""
但是,我需要从VB程序的其他子程序中传递string1
和string2
。所以,我想定义两个变量,我分配不同的和变化的值。所以,我尝试了以下方法:
DIM variable1, variable2 as STRING
variable1 = string1
variable2 = string2
MacScript ("do shell script ""/Users/mikesmith/Desktop/directory2/do_a_bunch_of_stuff.sh variable1 variable2"""
哪个不起作用。我还尝试将引号中的整个字符串定义为单个字符串,其中我将路径,文件名和参数连接在一起。这也不起作用。
有什么建议吗?我感谢任何帮助...
答案 0 :(得分:0)
VB和VBA中的连接字符串应该使用&
"do shell script ""/Users/mikesmith/Desktop/directory2/do_a_bunch_of_stuff.sh """ & variable1 & " " & variable2
你也可以在multy步骤中完成,如下所示:
Dim command, script as String
script = """/Users/mikesmith/Desktop/directory2/do_a_bunch_of_stuff.sh"""
command = "do shell script"
command = command & " " & script & " " & variable1 & " " & variable2
你也应该像这样关闭括号:
MacScript(command)