Python 3.x Openpyxl使用表创建的excel文件导致需要恢复的文件出错

Python 3.x Openpyxl使用表创建的excel文件导致需要恢复的文件出错,python-3.x,excel,openpyxl,excel-tables,Python 3.x,Excel,Openpyxl,Excel Tables,我一直在测试使用openpyxl向工作表中添加一个表,但是当我尝试打开它时,出现了下面的错误。文件将打开,但格式不正确。点击恢复后,excel报告表xml出现问题。是否有解决方法/修复方法 我正在使用的代码: import openpyxl from openpyxl import Workbook from openpyxl.worksheet.table import Table, TableStyleInfo xl_file_name = "new_test.xlsx" wb = W

我一直在测试使用openpyxl向工作表中添加一个表,但是当我尝试打开它时,出现了下面的错误。文件将打开,但格式不正确。点击恢复后,excel报告表xml出现问题。是否有解决方法/修复方法

我正在使用的代码:

import openpyxl
from openpyxl import Workbook
from openpyxl.worksheet.table import Table, TableStyleInfo

xl_file_name = "new_test.xlsx"
wb = Workbook()
ws = wb.worksheets[0]
ws.title = "Table_Sheet"
headers = ["header1","header2","header3"]
for col in range(1,len(headers)+1):
    for row in range(1,5):
        if row == 1:
            ws.cell(row,col).value = headers[col-1]
        else:
            ws.cell(row,col).value = str(row)

tbl = Table(displayName="Tbl1",ref="A1:C4")
style = TableStyleInfo(name="TableStyleMedium9", showFirstColumn=False, showLastColumn=False, showRowStripes=True, showColumnStripes=True)
tbl.tableStyleInfo = style
ws.add_table(tbl)
wb.save("new_test.xlsx")

该表的名称是导致问题的原因。使用
displayName=“Tbl”
displayName=“Tbl_1”
运行相同的代码,您将看到它工作正常。我不是100%确定,但我认为问题的原因是您提供的名称与TBL1的可能单元格引用的格式冲突

该代码无法按原样运行,请提供一个完整的示例。@CharlectLark我已经更正了它。我的表名中的破折号“-”也有同样的问题