我已经使用pyinstaller从pythonscripy创建了一个.EXE
文件
部分程序应获取xlsm文件并将其VBA提取到bin文件。我使用.spec
文件将xlsm文件传递给EXE:
datas=[('gen_ClipFile_V3p1.xlsm','.')],
然后,当程序从xlsm文件中提取“vbaProject.bin”时
我得到一个错误:
'vba_extract.py' is not recognized as an internal or external command
我的相关代码:
import xlsxwriter
import os
from pathlib import Path
# a function called by tkinter file open
def compareDesigns(self):
# find the EXE temporary working directory path
bundle_dir = Path(getattr(sys, '_MEIPASS', Path.cwd()))
strbundle_dir = str(bundle_dir)
XLSMtoExtract = os.path.join(strbundle_dir, 'gen_ClipFile_V3p1.xlsm')
os.system("vba_extract.py" + XLSMtoExtract)
我的等级库文件包括:
datas=[('gen_ClipFile_V3p1.xlsm','.')],
hiddenimports=['matplotlib', 'pathlib', 'time', 'sys', 're', 'operator', 'numpy', 'mplcursors', 'collections', 'xlsxwriter', 'os', 'tkinter', 'pyinstaller'],
我确实设法在我的机器上运行该应用程序,但其他使用不同机器的用户报告此错误
我相信我应该在exe临时区域中找到vba_extract.py路径并引用它,但我知道如何找到它
如果xlsxwriter安装正确,则应将
vba_extract.py
添加到Windows%PATH%。但是,在主脚本运行的同一环境中,这可能不可用有些建议与建议的顺序相反:
vba_extract.py
code。它不是很大,如果知道目标xlsm文件没有问题,您可以省略很多异常处理李>相关问题 更多 >
编程相关推荐