2011-03-09 83 views
0

我有python 2.6脚本,在Windows上创建一堆csv文件。 此脚本可以通过VBA shell命令单独运行或在Excel内部运行。 独立运行时没有问题,其次是VBA脚本。Excel中的Python文件共享问题

当我用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. 

该脚本multitheaded ....

+1

为什么os._exit?为什么不sys.exit? os._exit:退出到指定状态的系统,没有正常的退出处理。 – joaquin 2011-03-09 23:34:22

+0

chg to sys.exit(1),同样的问题。 – Merlin 2011-03-09 23:38:32

+0

另一方面,我不熟悉VBA,但“文件现在可用”似乎没有错误消息... – joaquin 2011-03-09 23:39:24

回答

0

您可能希望创建外壳调用后的延迟(DOEVENTS或睡眠(100)可能会奏效),以允许操作系统正确关闭该文件并删除指向该文件的所有指针。