Azure ML Studio安装pywin32失败 寻求xlsm宏执行可行方案
报错根因
pywin32是Windows平台专属依赖包,仅适配Windows操作系统环境。Azure ML Studio默认提供的计算实例为Linux操作系统,不存在适配Linux的pywin32发行版本,因此直接安装会触发版本匹配失败报错。
可行解决方案
- 方案1:更换Windows计算实例
你可以在Azure ML中创建Windows操作系统的计算实例,该环境下可正常安装pywin32,直接沿用本地的win32com处理逻辑即可。需注意Windows计算实例可选规格更少,单位时长成本高于同配置Linux实例。 - 方案2:使用Linux环境兼容的替代实现
无需更换操作系统,可通过如下工具满足xlsm处理需求:- 仅需读写xlsm普通数据、无需执行宏:使用
openpyxl包,调用load_workbook时传入keep_vba=True参数即可保留文件内的宏内容,常规单元格读写操作都可正常完成。注意openpyxl本身不支持执行VBA宏 - 需要执行宏:使用LibreOffice Calc命令行工具
首先在计算实例终端执行安装:sudo apt update && sudo apt install libreoffice-calc -y
然后通过Python的subprocess模块调用命令执行宏,示例命令格式如下:
执行完成后即可得到宏运行后的xlsm文件,可继续后续处理流程。libreoffice --headless --calc "vnd.sun.star.script:Standard.Module1.宏方法名?language=Basic&location=document" /path/to/your/file.xlsm
- 仅需读写xlsm普通数据、无需执行宏:使用
内容的提问来源于stack exchange,提问作者Sruthy Skaria
相关产品推荐
相关产品推荐

