`pyaddin init`失败
os: window11 office version: office2021 python: python3.9 pyAddin: 0.1.0
执行 pyaddin init --name=sample时报错
PS C:\Users\roych\Desktop\Excel_python> pyaddin init --name=sample
[INFO] (1/3) Creating add-in structure...
[INFO] (2/3) Creating menu callback subroutines...
[ERROR] (-2147352567, '发生意外。', (0, 'Microsoft Excel', '不信任到 Visual Basic Project 的程序连接\n', 'xlmain11.chm', 0, -2146827284), None)
请问,这个 不信任到 Visual Basic Project 的程序连接,怎么处理呢,谢谢
我通过 在设置中 启用信任对VBA工程对象模型的访问,现在是可以 pyaddin init了

但是打开 xlam文件后,仍然报错如下

感谢反馈问题。
-
第一个问题你已经正确解决。
-
第二个问题是因为你的Excel是64位版本,而图中标红的VBA声明语句只适用于32位版本。
针对这个具体的xlam文件的解决方法:根据错误提示,将第二幅图中红色标识的语句加上 PtrSafe 关键字;更一般的解决方法是,请在Python第三方库安装目录site-packages下找到"PyAddin/pyaddin/resources/vba/general.bas",同样修改第2行,然后pyaddin init重新生成。
Public Declare PtrSafe Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (lpDest As Any, lpSource As Any, ByVal cBytes&)
我修改之后,现在还是报错
PS C:\Users\roych\Desktop\Excel_python> pyaddin init --name=sample
[INFO] (1/3) Creating add-in structure...
[ERROR] '<win32com.gen_py.Microsoft Excel 16.0 Object Library.Workbooks instance at 0x2697954276832>' object has no attribute 'open'
我的pip list:
PS C:\Users\roych\Desktop\Excel_python> pip list
Package Version
------------------------- ---------
altgraph 0.17.2
fire 0.4.0
future 0.18.2
Nuitka 1.0.4
pefile 2022.5.30
pip 22.2.2
pyAddin 0.1.0
pyinstaller 5.3
pyinstaller-hooks-contrib 2022.8
pywin32 304
pywin32-ctypes 0.2.0
setuptools 58.1.0
six 1.16.0
termcolor 1.1.0
xlwings 0.27.12
I hit the same error
(venv) C:\Users\yuxuz\OneDrive\Documents\projects>pyaddin init --name=SuperAddin [INFO] (1/3) Creating add-in structure... [ERROR] '<win32com.gen_py.Microsoft Excel 12.0 Object Library.Workbooks instance at 0x2321409527472>' object has no attribute 'open'