Excel(*.xls) Dateien mit C auswerten
-
Hallo zusammen,
Einführung:
Ein ähnliches Thema zum selben Problem habe ich hier schon gefunden, leider war das nicht sehr hilfreich -> google || Boardsuche.
Mit der Boardsuche war ich im Bezug auf Excel nicht sehr erfolgreich, bei google
hab ich immerhin ein paar Schlagworte gefunden wie Excel C API, OEM/COM usw.
Zudem kommt noch, dass ich in C eher Anfänger bin...Ziele:
- Sauberer C Code - Soll nacher unter Linux(Red Hat) laufen
- Bestimmte Zellen und Spalten "quasi" in ein C Array schreiben.
In Prosa: Die Excel Tabelle soll als Abbild in C verfügbar sein.Wunsch:
Ich würde mich freuen, wenn Ihr mich auf dem Weg dahin ein wenig unterstützen könntet. (Ich wills schon selber amchen, nicht von euch "geschenkt" bekomen)
Auch im Bezug auf die generelle Vorgehensweise - hab sowas noch nie "richtig" gemacht.
D.h. Zuerst mal Informationen beschaffen -> Wenn jamand von euch nützliche Tuts dazu kennt oder gute Linksweis, dann immer her damit!Der Rest an Fragen folgt dann vermutlich später.
MfG
-
Einfacher ist es, wenn du die Excel-Tabelle als XML abspeicherst und dann mit entsprechenden Libraries (z.B. TinyXML) darauf zugreifst.
-
Ich hab mal was ähnliches mit asp gemacht und hab hier ein paar Tipps gefunden gehabt.
-
Hi,
Vorweg: Danke für eure Anteilnahme
@Th: Vermutlich wärs einfacher, das Problem ist die Datei liegt zudem noch in einer Datenbank und soll nicht extra zwischengespeichert & konvertiert werden müssen
--> Ich will die die Datei im geschlossenem Zustand bearbeiten können.
Wieder Prosa: Was ich suche ist in etwa sowas wie C <--> ODBC <--> Access
also C <--> Library??? <--> *xls-Datei(geschlossen)Es scheint wohl auch mittels ODBC direkt zu gehen ist aber wegen dem Linux zu aufwendig. Eigentlich suche ich nur nach irgendwelchen Funktionen die irgendwer mal gebaut hat, um direkt auf eine xls Datei zuzugreifen, ohne irgendwelche Umwege.
MfG
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Excel unter Linux ist so ein Problem. Die einfachste Methode wäre einfach CSV Dateien zu benutzen. Die kann Excel afaik ohne probleme lesen und exportieren.
Ansonsten kannst du vielleicht OpenOffice.Org benutzen. Das besitzt eine API und Scripteigenschaften und es kann xls lesen und schreiben. Aber je nachdem kann es natürlich ein enormer overhead sein, wenn du verlangst, dass der Benutzer OOo installiert
-
Auch ich suche derzeit nach einer Möglichkeit, möglichst ohne Umwege Daten aus einer xls Datei heraus zu nehmen, ggf. die Datei auch alternativ bearbeiten zu können.
Noch verwende ich selbst den Umweg über die Konvertierung zu csv Dateien, jedoch ist es halt ein Umweg, den man nicht jedem als Aufgabe geben möchte.
Ich habe bisher noch keine Idee, werde mich aber mit den mir vorliegenden Tools auseinandersetzen (Borland C++ Builder 6 und einige Erweiterungspakete die mich bereits einiges an Geld gekostet haben und noch keinen Nutzen zeigen konnten
)
-
Ich habe nicht die Geringste Ahnung von Linux. Unter Windows ist's per ODBC wirklich stinkend einfach.
ODBC-Verbindung über Connection-String herstellen:
Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=X:\MeineDatei.xls;DefaultDir=X:\MeinArbeitsverzeichnis
X:\MeineDatei.xls und X:\MeinArbeitsverzeichnis muss natürlich angepasst werden.
Und dann ein simples SQL-Statement um die Daten abzufragen:
SELECT * from [TABELLE1]
TABELLE1 muss hier evtl durch den richtigen Namen ersetzt werden (Ist der Name des Sheets, wie er in Excel angezeigt wird, Tabelle1 ist die Vorgabe eines deutschen Excels soweit ich weiss).