Openpyxl ['MergedCell' 对象属性'超链接' 是只读的] 问题

Joh*_*Boy 2 python excel xlsx openpyxl

加载 xlsx 文件时遇到问题。在工作表中,合并单元格中有一个超链接。加载文件时,发生错误。任何人都可以 代码就是这样。

workbook = openpyxl.load_workbook(report_filepath)
Run Code Online (Sandbox Code Playgroud)

错误信息:

    File "F:\mainfunc_new.py", line 733, in read_report
    workbook = openpyxl.load_workbook(report_filepath)
  File "C:\Users\10225167\AppData\Local\Programs\Python\Python36\lib\site-packages\openpyxl\reader\excel.py", line 312, in load_workbook
    reader.read()
  File "C:\Users\10225167\AppData\Local\Programs\Python\Python36\lib\site-packages\openpyxl\reader\excel.py", line 274, in read
    self.read_worksheets()
  File "C:\Users\10225167\AppData\Local\Programs\Python\Python36\lib\site-packages\openpyxl\reader\excel.py", line 228, in read_worksheets
    ws_parser.bind_all()
  File "C:\Users\10225167\AppData\Local\Programs\Python\Python36\lib\site-packages\openpyxl\worksheet\_reader.py", line 389, in bind_all
    self.bind_hyperlinks()
  File "C:\Users\10225167\AppData\Local\Programs\Python\Python36\lib\site-packages\openpyxl\worksheet\_reader.py", line 355, in bind_hyperlinks
    cell.hyperlink = link
AttributeError: 'MergedCell' object attribute 'hyperlink' is read-only
Run Code Online (Sandbox Code Playgroud)

谢谢。

sco*_*ipx 5

使用版本 2.5.14 而不是你的。它对我有用。

pip install openpyxl==2.5.14
Run Code Online (Sandbox Code Playgroud)