【发布时间】:2026-02-01 16:15:01
【问题描述】:
我正在制作一个 Python 程序,它可以使用 VBA 打开、编辑和保存 xlsm Excel 文件。但是,在wb.save(filename = 'b.xlsm') 这一行中,出现了以下错误:lxml.etree.XMLSyntaxError: Opening and ending tag mismatch: br line 19 and b, line 20, column 12。
我必须编辑并保存 xlsm 文件。
import openpyxl
wb = openpyxl.load_workbook(filename = 'a.xlsm', keep_vba = True)
ws = wb.active
ws.cell(1,1).value = 'test'
print(ws.cell(1,1).value)
wb.save(filename = 'b.xlsm')
【问题讨论】:
-
你的代码对我有用,你能在 excel 中打开 a.xlsm 吗?
-
文件是否包含表单对象?
-
是的,a.xlsm 包含表单对象。
-
openpyxl 不适用于表单对象,xlwings 可以这样做,但必须安装 excel 并在 Windows 和 macOS 上运行
-
请包含完整的回溯。