如何将 return 信息从 Excel 发送给来电者
How to return information from Excel to the caller
我从命令行启动 Excel,我的附加组件做了一些工作。完成后,我想 return 向来电者提供一些信息。至少 0/1 表示成功失败或更好的还有可选的错误消息。
调用者是指启动 Excel 的命令或进程。例如在 Windows 命令脚本中,我可以这样调用 excel:
Excel.exe SomeWorkbook.xlsx /p C:\Somedir /e
当您在 Windows 中调用可执行文件时,它可以 return 数字代码或设置错误。
在脚本中,您可以这样检查结果:
if %errorlevel% neq 0 (
echo some error occurred...
)
消息框等不是选项,因为整个任务应该由另一个应用程序自动触发,无需任何用户交互。
我们该怎么做?
您可以使用状态栏:
Application.StatusBar = “您的留言”
据我所知,消息框需要点击一个按钮:macro will wait...
我最终使用了文本文件:即当加载项正确完成时,它将创建一个空文件 OK.txt
,当发生错误时,它将创建一个名为 ERR.txt
的文件,其中包含错误信息。
现在调用脚本很容易检查结果:
OK.txt
存在:一切正常 - 删除 OK.txt
- 不存在文件:发生致命错误:显示一般错误消息
ERR.txt
存在:发生错误:可能向用户显示错误文本(文本文件的内容),删除 ERR.txt
我从命令行启动 Excel,我的附加组件做了一些工作。完成后,我想 return 向来电者提供一些信息。至少 0/1 表示成功失败或更好的还有可选的错误消息。
调用者是指启动 Excel 的命令或进程。例如在 Windows 命令脚本中,我可以这样调用 excel:
Excel.exe SomeWorkbook.xlsx /p C:\Somedir /e
当您在 Windows 中调用可执行文件时,它可以 return 数字代码或设置错误。
在脚本中,您可以这样检查结果:
if %errorlevel% neq 0 (
echo some error occurred...
)
消息框等不是选项,因为整个任务应该由另一个应用程序自动触发,无需任何用户交互。
我们该怎么做?
您可以使用状态栏: Application.StatusBar = “您的留言” 据我所知,消息框需要点击一个按钮:macro will wait...
我最终使用了文本文件:即当加载项正确完成时,它将创建一个空文件 OK.txt
,当发生错误时,它将创建一个名为 ERR.txt
的文件,其中包含错误信息。
现在调用脚本很容易检查结果:
OK.txt
存在:一切正常 - 删除OK.txt
- 不存在文件:发生致命错误:显示一般错误消息
ERR.txt
存在:发生错误:可能向用户显示错误文本(文本文件的内容),删除ERR.txt