Datanitro python脚本没有在workbook_open()中执行

时间:2015-03-02 04:25:54

标签: excel excel-vba datanitro vba

在ThisWorkbook Excel对象中,我有以下两个子例程:

Private Sub Workbook_Open()
    MsgBox "Hello World"

    Call call_DN

End Sub

Sub call_DN()
    Application.COMAddIns("DataNitro.DataNitro").Object.RunScript ("test.py")
    MsgBox "called sub"
End Sub

当我打开工作簿时,我看到“Hello World”消息框,然后是“被调用的子”消息框,但是python脚本没有执行。

然而,当我然后手动运行Workbook_Open()时,python脚本确实正确执行。

为什么python脚本在应用程序启动时没有执行?

没有抛出任何错误消息 - 似乎只是忽略了.runscript命令。

1 个答案:

答案 0 :(得分:1)

DataNitro具有autostart选项,用于在工作簿启动时调用脚本。请使用它而不是VBA的工作簿打开钩子。

(工作簿开放式钩子应该在理论上起作用,但它看起来并没有。)