Moinmoin...
Vorweg (1):
Mich nervt es, dass hier immer wieder von Exceldateien erzählt wird, die beim Nachfragen zu ASCII/CSV Dateien mutieren oder im Zusammenhang mit dem "Write to Spreadsheet VI" von Exceldateien geredet wird.
Hier also der Rundumschlag um ein für alle Mal klarzustellen was eine Exceldatei ist.
Vorweg (2):
Ich will mich ja nicht mit fremden Lorbeeren schmücken, daher der Hinweis auf diesen
CodeProject Artikel.
Serhiy Perevoznyk hats ausgefuchst, ich habs portiert
Also was ist das?
Direktes Erstellen einer nativen (binären) Exceldatei in BIFF5 (Binary Interchange File Format Version 5) ohne Excel Automation oder das Einbinden von 3rd-Party dll's.
Pro:
Ein installiertes Excel ist auf dem ausführenden Rechner nicht nötig.
Exportieren von Double-, Integer- und String-Werten.
Es ist schneller als Excel Automation.
Contra:
In dieser Version keine Formatierung der Zellen.
Wer kann und möchte, kann das ja nachrüsten.
Links zu den Spezifikationen:
OpenOffice: Excel Spezification und
Microsoft: Excel Spezification
Wofür braucht man das?
Ich benutze das schon länger in meinen VB.net Projekten, um schnell große Datenmengen zu exportieren. So in der Größenordnung mehrere 10000 Zeilen und 100+ Spalten. Auf eine Formatiertung kann ich dabei verzichten, da es um die Daten zu Weiterverarbeitung geht und nicht um Kundenreports.
Wie benutzt man das?
Für LV hab ich die Funktionen Start/Stop und ein polymorphes VI zum schreiben einer Zelle erstellt.
Beispiel:
snip09
Dateien:
xlBinaryWriter_lv09.llb (Größe: 165,36 KB / Downloads: 562)
xlBinaryWriter_lv80.llb (Größe: 223,35 KB / Downloads: 497)
Lizenz:
Genauso wie der C#-Code stehen die LV-VI's unter der
The Code Project Open License (CPOL) 1.02 zur Verfügung.
Letzte Worte:
Viel Spaß damit.
Wer was verbessert, darf es natürlich gerne hochladen...
Gruß SeBa