【问题标题】:File sharing problem with Python inside ExcelExcel 中 Python 的文件共享问题
【发布时间】:2011-03-10 12:00:38
【问题描述】:

我有在 Windows 上创建一堆 csv 文件的 python 2.6 脚本。 该脚本可以单独运行,也可以通过 VBA shell 命令在 Excel 中运行。 单独运行时没有问题,然后是 VBA 脚本。

当我通过 shell 调用在 Excel 中运行脚本时。我有文件共享问题。 脚本创建运行,关闭文件

 fw = open(fn, "wb")
 fw.write(....)
 fw.close()

在脚本的末尾我有:

os._exit(1)

然后 Excel VBA 对文件进行处理。这会给出错误消息。

错误信息:

"FILE Now Available"

....is now avaiable for editing. 
Choose read-write to open it for editing. 

脚本是多头的....

【问题讨论】:

  • 为什么是 os._exit ?为什么不 sys.exit? os._exit:以指定状态退出系统,不进行正常退出处理。
  • chg 到 sys.exit(1),同样的问题。
  • 另一方面,我不熟悉 VBA,但“文件现在可用”似乎不是错误消息...
  • “文件现在可用”停止 VBA 脚本要求选择读写或取消。我通过 VBA 停止了系统对话框——没有帮助。

标签: python windows excel vba file-io


【解决方案1】:

您可能希望在 shell 调用之后创建一个延迟(doEvents 或 sleep(100) 可能会起作用),以允许操作系统正确关闭文件并删除指向该文件的所有指针。

【讨论】:

    猜你喜欢
    • 2015-06-06
    • 2017-01-20
    • 2011-09-13
    • 1970-01-01
    • 2019-11-13
    • 1970-01-01
    • 2021-03-15
    • 2013-06-30
    • 1970-01-01
    相关资源
    最近更新 更多