Fehlermeldung beim Öffnen von XLSX-Dateien in Excel, die mit Aspose erstellt wurden und List Objects enthalten

Mit Aspose.Cells hatte ich eine XLSX-Datei erstellt. Darin habe ich eine DataTable importiert und dann noch ein List Object zur Formatierung darüber gesetzt.

D.h. ich wollte einen Bereich als Tabelle formatieren, damit er grob so aussieht:

Die Generierung hat super geklappt, sobald ich es in Excel geöffnet hatte, hat Excel jedoch gesagt, dass das Dokument beschädigt/korrupt sei:

Die genauere Reparaturmeldungen waren dann:

In textueller Form:

Repaired Records: Table from /xl/tables/table1.xml part (Table)
Repaired Records: Table from /xl/tables/table2.xml part (Table)

Ursache

In der übergebenen DataTable hatte ich zwei Spalten (DataColumn), deren Caption-Eigenschaft gleich war.

Der Import der DataTable nach Aspose erfolgte grob so:

worksheet.Cells.ImportDataTable(...);

Es gab dann zwei Spalten mit derselben Überschrift. Das Formatieren als List Object ist dann damit nicht zurecht gekommen.

Lösung

Die Lösung war dann ganz einfach, dass die zu importierende DataTable nur eindeutige Caption-Werte in den Spalten hat.

Danach hat alles sauber funktioniert, es gab keine Fehler mehr beim Öffnen in Microsoft Office Excel.