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.