c# > excel > server > hilfe :o

Jeannine

Mitglied
Hallo,

ich habe ein kleines Scriptchen welches mir als Scheduled-Task Daten aus der db in ein Excelfile schreibt und das File in ordner X im Netzwerk speichert.

Das ganze läuft Lokal wo ich auch Excel habe.

Nur leider nicht auf dem Server wo es als scheduled Task laufen sollte.
Und ich will das Excel installieren auf dem Server vermeiden.

Das Problem aus meiner Sicht:
Das c# Script öffnet im Hintergrund die Excelmappen und schreibt[...]
Da auf dem Server wohl kein Excel ist welches er öffnen und beschreiben kann, schreibt ers nicht! ;) Es zeigt ja auch nur bei den excel using's einen Fehler hin.

Gibt es da irgendwie .dll 's die ich auf den Server laden könnte?

Danke und Grüssle
jeannine

*-----*
hahahahah... jetzt wo ichs nochmals lese hoffe ich dass es verständlich ist ;)
 
Hierfür gibt es folgende Möglichkeiten:

1) Excel am Server installieren
2) Eine Library verwenden, die das kann, ohne das Excel installiert ist. Diese sind aber meist kostenpflichtig
3) Mit OpenXML arbeiten und im Excel 2007 Format schreiben
 
Hallo Jeannine,

eine andere Möglichkeit wäre die Verwendung von OLE DB. Hier kannst du (fast) wie mit einer SQL Server Tabelle arbeiten. Folgende Vorraussetzung: Es muss bereits ein Excelfile auf dem Server vorhanden sein, denn die Dateien selbst können von OLE (mein bisheriger Wissensstand) nicht erstellt werden.
Eine neue Tabelle in dem File kannst du mit CREATE TABLE anlegen.

Ansonsten kannst du ganz normal mit INSERT INTO etc. Daten in das Excelfile schreiben. Der Tabellenname für der INSERT-Statement wäre der Name des Sheets gefolgt von einem $-Zeichen.

Zu diesem Thema sollte es bei Google :google: oder hier im Forum :google: genügend Futter geben.

Viele Grüße,
Sebastian
 
Zurück