【发布时间】:2012-06-14 22:57:02
【问题描述】:
如何在 MAC OSX 上使用 VBA 运行bash 文件
我尝试了以下代码
location = FolderPath(ThisWorkBook.FullName)
返回当前目录减去文件名。
紧随其后
Shell(location &"runmybatch.sh")
我这样做是因为 bash 脚本与 excel 电子表格位于同一文件夹中。
【问题讨论】:
-
您不需要在位置和脚本名称之间包含一个“\”字符吗?祝你好运。
-
“Shell”命令需要一个 ':' 分隔路径,尽管这不是问题。我尝试了一个简单的 Shell 调用,其完全限定路径指向模式为 755 的 bash shell 文件,与 Excel 工作簿位于同一目录中,但我总是收到权限被拒绝错误。这似乎是一件很容易的事情,但我也做不到。
-
Joel,仔细检查父进程的所有者是否与脚本的所有者相同。相应地 chown 脚本或临时 chmod 以便任何人都可以执行它。 (757)
-
Saned 的“FolderPath”不是真实的东西......它必须是他自己的库中的一个函数......但不要担心。我将把赏金奖励给任何可以提供分步说明的人,这些人可以展示如何创建一个单行 bash 脚本,该脚本执行一些琐碎的操作,如触摸文件,与 Excel 启用宏的工作簿位于同一目录中,并且从 VBA 成功启动该脚本。