在VBA for Excel Python中找不到引用

我正试图通过Excelmacros调用一个python脚本。 但是,我在VBA引用中看不到对Excel Python的引用。 我安装了PyWin32,我也安装了Excel Python。

* .py文件通常由python.exe程序(PyWin32安装的程序)执行。 如果python.exe程序包含在环境variablesPATH中(就像通常应该在安装之后一样),这意味着你可以通过调用“python filename.py”来从任何地方使用commandpromt来调用* .py文件的执行。在命令行中。

因此,从您的vba代码,您应该使用Microsoft Scripting Runtime或Windows Script Host库,并以类似于下面的方式调用一个shell

Call Shell("python filename.py") 

如果python.exe不包含在环境variablesPATH中,这意味着你必须调用程序的长path

 Call Shell("c:/path/to/python.exe filename.py") 

注意可执行文件和要执行的python文件名之间的空格。

根据您需要的Excel和Python之间的多less交互,它也可以用来试用xlwings包。 这个软件包是build立在pywin32之上的。 它允许你从VBA调用Python脚本,随后Python脚本可以通过xlwings函数轻松地与Excel应用程序交换数据。 看到这些例子和文档 。