2011-01-06 4 views
0

Ich habe eine DataTable in meinem Programm, die ich zuvor mit einer CSV-Datei excel exportiert habe. Allerdings möchte ich die Hintergrundfarbe von Zellen bedingt formatieren - was natürlich einen neuen Ansatz erfordert.Exportieren von Daten in Excel (einschließlich Formatierung) mit C#

Das Problem ist dies - der Computer, auf dem die Software ausgeführt wird, hat kein Excel. Ich kann also nicht den Weg gehen, die Excel-API aufzurufen.

Gibt es eine einfache Möglichkeit, dies zu tun, die ich verpasst habe? Wenn nicht, wird das Format von Excel-Dateien veröffentlicht oder wie kann ich dieses Ziel erreichen?

Danke.


EDIT:

Für alle anderen, die daran interessiert ist, fand ich schließlich this post, die die einfachste Methode bietet die ich gefunden habe. Funktioniert mit Excel 2003.

Antwort

0

Check out NPOI, die ein .NET-Port von POI ist, eine kostenlose MS-Office-Interop-Bibliothek. Es ist mächtig und ziemlich einfach zu lernen (obwohl die Dokumentation ist zweifelhaft). Ich würde einige der früheren Posts hier auf NPOI (es gibt nicht so viele) durchlesen, um mit ein paar frustrierenden Fallstricken vertraut zu werden, die nicht so sehr Probleme sind, als Dinge, die nicht eingängig und nicht immer offensichtlich aus der Dokumentation sind.

Aber sobald Sie über das Fehlen einer guten Grundierung hinauskommen, ist es eine wunderbare Bibliothek.

Ich nehme an, Sie sprechen über XLS-Format. Wenn Sie das neuere XML-basierte xlsx-Format verwenden können, ist das ein völlig anderes Problem. Sie müssen nur XML schreiben, das Format ist auf der Microsoft-Website verfügbar. Es kann sein sind (siehe andere Antwort) Tools, die dabei helfen können, obwohl persönlich, verwende ich immer nur NPOI und schreibe XLS-Dateien, um sicher zu sein, dass jeder sie öffnen kann.

Verwandte Themen