【发布时间】:2011-06-15 18:45:28
【问题描述】:
我在 MS-Access97 前端中有以下 vba 代码,它打开存储在服务器上的 word 文档:
Call Shell("winword ""\\Fileserver\Contabilita\Crucial deadlines\Bonifico97.doc""", 1)
文档是一个合并文档(从查询中获取数据并从检索到的数据中填充文档)
现在,我已将数据库前端放在另一台计算机上(仍在使用 MS-Access 97,但在 PC 上安装了 MS-Word 2003 - MS-Access 97 仍然运行良好,因为它安装在不同的目录中)但是现在当上面的代码使用调用 shell 被执行时,我总是得到“找不到文档”。如果我在 Start/execute 中启动上述 shell 命令,则文档正在正确打开。
可能是什么问题?文件路径? VBA 97 和 VBA2003 关于文件路径有什么变化吗?我知道文件路径中有一个带有空格的文件夹,但它在安装了 office97 的 PC 上运行良好。
如果能得到任何帮助,我将不胜感激。谢谢。
【问题讨论】:
-
我想知道你的路径中是否有单词?我还没有见过 shell 与这么短的单词引用一起使用。
-
类似的 Shell 命令是否适用于普通(非合并)文档?
-
我觉得你可能需要shellexecute:developerfusion.com/article/9/shell-and-shellexecute-function/2
-
@Remou。它不喜欢 winword(在 Access97 中工作)。我通过使用 Word 2003 的整个路径解决了,即 "Call Shell("C:\Programmi\Microsoft Office2003\OFFICE11\WINWORD.EXE ""\\Fileserver\Contabilita\Crucial deads\Bonifico97.doc""", 1)"如果您将其作为答案,我可以将其作为已接受的答案。谢谢。
-
@HansUp - 不,文档是否为合并类型没有区别。我已经试过了。无论如何谢谢。