mikrocontroller.net

Forum: PC-Programmierung Daten aus Excel auslesen. MS Visual C++ Express


Autor: moOmb@ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich habe probiert im Netz zu finden, wie man mit C++ Daten aus einem 
.xls lesen/schreiben kann. Ich finde zwar vieles, ist aber alles 
irgendwie nicht brauchbar bzw. veraltet. Deswegen bitte nicht zu 
google/suche schicken :)

Frage ist, wie geht das am einfachsten?

.xls-Datei liegt auf Festplatte, eine Anwendung (mit einem Button z.b.) 
öffnet diese Datei, und liest einen Wert aus dem Sheet1 und dann einen 
Wert aus Sheet2.

Codebeispiele sind erwünscht :)

Vielen Dank im Voraus.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist denn Excel auf dem Computer installiert? Wenn ja kann man das Excel 
als AktivX Fernsteuern.

Autor: moOmb@ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja Excel ist drauf.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann suche im Netz mal nach AktivX oder COM Beispielen. Je nach 
entwicklungsumgebung geht das recht einfach.

Autor: moOmb@ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und was ist mit Workbook->Open?
Habe das mal gesehen, Code ist "schön" und verständlich, funktioniert 
aber leider nicht :)
Oder ist das ActiveX - zeug?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moOmb@ schrieb:
> Und was ist mit Workbook->Open?
> der ist das ActiveX - zeug?

ja ist es.
(vermutlich, dann Workbook kann je irgendein Object sein. Dafür müsste 
man schon etwas mehr code sehen)

Autor: Andreas H. (andreas_h16)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf Codeproject gibt's genügend Beispiele, z.B.

http://www.codeproject.com/KB/database/cspreadsheet.aspx

wenn Du noch eine VC6 kompatible Klasse willst.

.net Implementierungen gibt's da auch  ...

Andreas

Autor: moOmb@ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Andreas H. (andreas_h16)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moOmb@ schrieb:
> Kompiliert in Visual Studio C++ 2010 nicht.

Tja, drum ist die Klasse ja noch VC6 kompatibel. Für 2010 würde ich was 
.net kompatibles nehmen 
->http://www.codeproject.com/KB/wtl/WTLExcel.aspx

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moOmb@ schrieb:
> Kompiliert in Visual Studio C++ 2010 nicht.

und warum nicht? gib es eventuell auch eine Fehlermeldung?

Autor: moOmb@ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter schrieb:
> und warum nicht? gib es eventuell auch eine Fehlermeldung?

fatal error C1083: Datei (Include) kann nicht geöffnet werden: 
"afxdb.h": No such file or directory

Ist eine Include-Anweisung die in der CSPREADSHEET.H drin ist.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moOmb@ schrieb:
> "afxdb.h": No such file or directory

dann lass die zeile doch mal weg, die datei gehört zu MFC. Kann es sein 
das du die Express version vom Studio ohne MFC hast?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Alternative wäre es, eine ODBC-Verbindung für die Excel-Datei 
einzurichten, dann kann mit den üblichen ODBC-Verfahren gearbeitet 
werden.

%SystemRoot%\system32\odbcad32.exe aufrufen und durchklicken.

Autor: moOmb@ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter schrieb:
> dann lass die zeile doch mal weg, die datei gehört zu MFC.

Ja, ich habe leider nur eine Express Version. Liegt das daran, dass ich 
diese Klasse nicht verwenden kann?

Das auslassen habe ich bereits probiert, werde mit Fehlermeldungen 
überschwemmt :)

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moOmb@ schrieb:
> Ja, ich habe leider nur eine Express Version.

Dann kannst Du MFC nicht nutzen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.