Vbscript 带空格的可编辑文本框中的文件路径

Vbscript 带空格的可编辑文本框中的文件路径,vbscript,filepath,spaces,Vbscript,Filepath,Spaces,我有一个文本框,他们应该在其中填写文件路径,例如: C:\Data\Project X\ ...\Design\CAD Drawings 然后我们将标准子文件夹作为项目阶段,例如: C:\Data\Project X\ ...\Design\CAD Drawings \Design\CAD Drawings\目录是固定的,父文件夹是可变的,这取决于它是否位于服务器、本地等 在某些情况下,按钮用于打开excel表格,其中包含有关机器特定部分的信息,例如螺栓、垫圈和螺母的列表 我将shell

我有一个文本框,他们应该在其中填写文件路径,例如:

C:\Data\Project X\
...\Design\CAD Drawings
然后我们将标准子文件夹作为项目阶段,例如:

C:\Data\Project X\
...\Design\CAD Drawings
\Design\CAD Drawings\
目录是固定的,父文件夹是可变的,这取决于它是否位于服务器、本地等

在某些情况下,按钮用于打开excel表格,其中包含有关机器特定部分的信息,例如螺栓、垫圈和螺母的列表

我将shell命令用作:

Shell "excel.exe ""C:\Data\Project X\Design\CAD Drawings\Bolts.xlsx""", vbNormalFocus
如果我手动填写文件路径,这将非常有效。当我想将路径创建为变量/字符串的组合时,就会出现问题。我想要像这样的东西:

Shell "excel.exe [ProjectPath]\Bolts.xlsx", vbNormalFocus
其中
[ProjecPath]
是文本框中的字符串

Excel按预期打开,但随后它表示在路径
C:\Data\Project
处找不到该文件。然后我按OK,然后下一个符号出现:

在“X\Design\CAD”处找不到文件

以此类推-即,每当出现空格时,它都会截断文件路径

当我将消息框设置为:

MsgBox [ProjectPath]

它用空格和所有内容完美地书写了路径,但是当我在shell命令中填充它时,它会在空格处剪切它。当我将“”放在周围时,我发现它只搜索名称
[ProjectPath]
,而不是文本框字段中的字符串。

您需要引用完整的文件规范:

>> pth = "C:\Data\Project X"
>> inp = "Design\CAD Drawings"
>> fil = "bolts.xls"
>> fsp = goFS.BuildPath(pth, goFS.BuildPath(inp, fil))
>> cmd = "excel.exe """ & fsp & """"
>> WScript.Echo cmd
>>
excel.exe "C:\Data\Project X\Design\CAD Drawings\bolts.xls"

尽量使问题简单、简短、易读。如果没有使用“”的标准答案,我认为问题不可能再简短了