Openpyxl: Workbook kann nicht gelesen bzw. geladen werden

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
aurumpurum
User
Beiträge: 9
Registriert: Freitag 15. Februar 2019, 14:33

Ich möchte mit Python das mühsame übertragen von Werten von einer Excel-Datei in eine andere automatisieren. Ich möchte dies mit dem Python Modul openpyxl bewerkstelligen.

Wenn ich das Ziel-Workbook laden will mit...

Code: Alles auswählen

>>> stm = openpyxl.load_workbook('2022-03-04_LU_LUKS_STM_DRG_AMA.xlsm')
...erhalte ich folgende Fehlermeldung:

Code: Alles auswählen

C:\Users\Dell\AppData\Roaming\Python\Python310\site-packages\openpyxl\worksheet\header_footer.py:49: UserWarning: Cannot parse header or footer so it will be ignored
  warn("""Cannot parse header or footer so it will be ignored""")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\Dell\AppData\Roaming\Python\Python310\site-packages\openpyxl\reader\excel.py", line 312, in load_workbook
    reader.read()
  File "C:\Users\Dell\AppData\Roaming\Python\Python310\site-packages\openpyxl\reader\excel.py", line 274, in read
    self.read_worksheets()
  File "C:\Users\Dell\AppData\Roaming\Python\Python310\site-packages\openpyxl\reader\excel.py", line 228, in read_worksheets
    ws_parser.bind_all()
  File "C:\Users\Dell\AppData\Roaming\Python\Python310\site-packages\openpyxl\worksheet\_reader.py", line 402, in bind_all
    self.bind_hyperlinks()
  File "C:\Users\Dell\AppData\Roaming\Python\Python310\site-packages\openpyxl\worksheet\_reader.py", line 368, in bind_hyperlinks
    cell.hyperlink = link
AttributeError: 'MergedCell' object attribute 'hyperlink' is read-only
Laut der Fehlermeldung kann die Arbeitsmappe nicht gelesen und in Python geladen werden. Hyperlinks und verbundene Zellen scheinen das Problem zu sein. Einige Funktionen im excel.py und reader.py Module in der openpyxl-Bibliothek funktionieren nicht. Die Arbeitsmappe, die ich zu laden versuche, besteht aus 20 Arbeitsblättern, die mit Formeln aufeinander verweisen. Könnten diese internen Links das Problem sein?

Ich habe darüber nachgedacht, die problematischen Zellen in der Arbeitsmappe zu finden, die Hyperlinks zu löschen - wenn überhaupt möglich - und die Zusammenführung von Zellen rückgängig zu machen, aber ich bin nicht der Autor der Excel-Datei und es könnte umständlich sein, diese Hyperlinks und zusammengeführten Zellen in der Arbeitsmappe zu finden. Ich habe versucht, das Dokument zu überprüfen, habe aber keine Möglichkeit gesehen, nach Hyperlinks und zusammengeführten Zellen zu suchen.

Gibt es eine Möglichkeit, das Problem zu lösen?
Benutzeravatar
ThomasL
User
Beiträge: 1377
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Mach doch mal hier ein Issue auf: https://foss.heptapod.net/openpyxl/openpyxl/-/issues
Oder schau mal ob dies ein bereits bekanntes Problem ist und wenn ja, ob eine Lösung in Sicht ist.
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
aurumpurum
User
Beiträge: 9
Registriert: Freitag 15. Februar 2019, 14:33

Ok, dort ist mein Problem schon gepostet.
aurumpurum
User
Beiträge: 9
Registriert: Freitag 15. Februar 2019, 14:33

Hat sich erledigt. War ein Bug und ich hatte eine alte Version.
Antworten