Exceltabellen OHNE installiertes Microsoft Excel lesen könne

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Exceltabellen OHNE installiertes Microsoft Excel lesen könne

Beitrag von UliTs »

Hallo,

ich möchte einzelne Zellen oder Spalten aus Exceldateien nach xBase auslesen.
Mit Active-X ist das eigentlich kein Thema, sofern Microsoft Excel installiert ist.
Wie kann ich dies OHNE Microsoft Execl bewerkstelligen? :?:

Uli
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo,

es gibt bei SQLExpress und bei der ODBCDBE Beispiele für ODBC Zugriffe. Diese müssten von Excel unabhängig sein. Alternativ könnte man eventuell mit OpenOffice Exceldateien öffnen und auslesen oder konvertieren. Müsstest du mal probieren.
Gruß
Hubert
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Beitrag von UliTs »

Hallo Hubert,

danke für Deine Tips.
Die Lösung für OpenOffice ist natürlich inakzeptabel. Das Auslesen der Excel-Zellen oder -Spalten soll ja gerade automatisch erfolgen!
Das bei ODBC-Zugriffen Microsoft Excel nicht installiert sein muß, kann ich mir kaum vorstellen.
Ich werde mich über SQLExpress schlau machen und dann berichten.

Uli
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Beitrag von UliTs »

Hallo Hubert,

wenn ich es richtig verstanden habe, ist SQLExpress ein "SQL-Datenbankserverprogramm". Ich habe unter sqlexpress.net nichts gefunden, was Zugriffe und Voraussetzungen auf Excel-Tabellen betrifft. Abgesehen davon scheint mir dies nicht der richtige Lösungsansatz zu sein.

Gibt es wirklich keine schnuckelige 30kb-DLL, mit der man ohne weitere Voraussetzungen Zellen oder Spalten aus einer Exceldatei lesen kann?:?:

Uli
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo Uli,

SQLExpress ist kein SERVER-Programm, sondern eine Art von Datenbanktreiber zum Zugriff auf ODBC Datenquellen. Das können SQL-Server oder auch nur Excel, Access oder dbf Dateien etc. sein.
ODBC ist schon länger Standard. SQLExpress greift auf ODBC Datenquellen zu (ähnlich einer DBE), soweit ist das schon ein richtiger Weg. Allerdings wird öffters von Problemen speziell mit XLS Dateien berichtet, ich habe bei meinen Experimenten keine gehabt.

Ob es eine DLL gibt die direkt zugreifen kann, weiß ich nicht.
Das Problem dabei ist, dass wahrscheinlich jede Version kleine Änderungen an der XLS vorgenommen hat.

Genau um dieses Problem zu umgehen nimmt man ODBC.

Laut dem SQLEXCEL.PRG Beispiel von SQLExpress wird zur Ausführung (und zum Zugriff) nur der 'ODBC driver manager ver. 3.51 oder höher' und der 'MS Excel ODBC driver' benötigt. Beides ist direkt von MS zu bekommen oder bei XP schon installiert (ich habe Win2000 und weiß nicht mehr genau woher die Treiber sind).
Zu beziehen sind die 'Microsoft Data Access Components (MDAC)' unter www.microsoft.com/data/download.html

Das Beispiel hier erzeugt eine XLS und liest und schreibt Daten rein.
Das Beispiel funktioniert. Mit der Testversion kann man ganz ordentlich arbeiten, somit könntest du das alles probieren.

Ich meine die Programme arbeiten dann 15 Minuten bei der Testversion.

PS: Tom hat unter Links http://www.wotsit.org/ erwähnt.
Dort findet man auch zu XLS einige Infos. Eventuell kannst du ja mit den Filefunktionen selbst was basteln. Ansonsten würde ich über Google nach DLL XLS suchen, oder auf der Alaska Partners Seite ob dort ein Produkt erwähnt ist.
Gruß
Hubert
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Beitrag von UliTs »

Hallo Hubert,

danke für Deine ausführliche Mail.
Mit http://wotsit.org/ habe ich schonmal eine Beschreibung, leider
aber 65 Seiten lang und auf englisch. Damit könnte man mit entsprechendem Programmieraufwand sicher auf XLS-Dateien zugreifen.
Mit SQLExpress könnte es vielleicht ohne Microsoft Excel klappen.
Allerdings habe ich es nicht geschafft, eine Demo-Version mit der Datei SQLEXCEL.PRG herunterzuladen. :(
Auch auf der Microsoftseite habe ich den Download zum MS Excel ODBC driver nicht gefunden. :(

Uli
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

UliTs hat geschrieben:Allerdings habe ich es nicht geschafft, eine Demo-Version mit der Datei SQLEXCEL.PRG herunterzuladen. :(
Auch auf der Microsoftseite habe ich den Download zum MS Excel ODBC driver nicht gefunden. :(
Hallo Uli,

hier kan man SQLExpress herunterladen, http://www.sqlexpress.net/menu.htm
Die ZIP Datei ist allerdings Kennwort geschützt.
Ich meine man muß eine eMail an Boris senden um das Kennwort zu erhalten. Wenn es für dich ein Problem ist auf englisch die eMail zu schreiben, kann ich mal dort anfragen wie das mit den Demos einfacher geht. Auf jeden Fall ist diese Version eine DEMO solange man keinen Lizenzschlüssel in einer PRG einträgt.

Ah, geh auf die Seite, dort ist links ein kleiner Menübaum,
dort SQLExpress auswählen, dann SAMPLES aufklappen (anklicken)
und ganz unten geht mit Free SQL Demo dein eMail-Programm auf mit den nötigen Grunddaten. Eventuell noch was ergänzen und ab damit.
Vermutlich kommt dann einige Zeit später eine eMail mit dem kennwort.

Die aktuelle MDAC 2.8 eventuell mit SP1 ? bekommt man hier (alles in eine Zeile):

http://www.microsoft.com/downloads/resu ... layLang=de

Allerdings solltest du mal zuerst in der Systemsteuerung nachsehen ob das nicht schon lange dort ist:
Systemsteuerung - Verwaltung - Datenquellen (ODBC) - Treiber:
hier habe ich *.XLS Treiber von MS 4.00.6200.00 (englisch + deutsch) CA (deutsch) etc.

Falls nicht vorhanden, werden die ODBC Treiber direkt vom MDAC installiert. Ich glaube auch über MS Update werden diese angeboten.

Sicherlich ist der direkte Weg (XLS mit Filefunktionen) wesentlich schwerer als ODBC zu aktivieren.
Andererseits würden wir uns in der Wissensbasis natürlich über den Quellcode freuen ;)
Gruß
Hubert
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Beitrag von UliTs »

Hallo Hubert,

vielen Dank, das Du dir so viel Mühe gibst!:D
Ich habe eine Mail an Boris geschrieben und hoffe nun auf die DEMO-Version.

Leider habe ich keinen Rechner ohne Microsoft Excel.
Es geht darum, daß bei Kunden Exceltabellen automatisch gelesen
werden sollen. Und auf deren Rechnern läuft nur ein xBase++ Programm.

Danke für den neuen Link auf Microsoft. Abschreckend ist für mich, daß der Download 5MB groß ist. Aber wenn es klappen sollte, wär es wahrscheinlich nicht so tragisch.:wink:

Viele Grüße und ein erholsames Wochenende.

Uli
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

UliTs hat geschrieben:Leider habe ich keinen Rechner ohne Microsoft Excel.
Es geht darum, daß bei Kunden Exceltabellen automatisch gelesen
werden sollen. Und auf deren Rechnern läuft nur ein xBase++ Programm.
... daß der Download 5MB groß ist.
Dann bitte doch einmal einen deiner Kunden in der Systemsteuerung nachzusehen. Und was die Dateigröße angeht, bin ich halt priviligiert:
1&1 3DSL mit 16000MBit/Sek.
Die MDAC Datei kannst du aber auch auf deine Produkt CD packen und installieren lassen (ich habe zumindest nichts anderes gelesen ?), dann sparen sich die Kunden den download.
Gruß
Hubert
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Beitrag von UliTs »

Hallo Hubert,

inzwischen habe ich den Freischaltcode für die DEMO von SQLExpress bekommen und ich bin beeindruckt!
Es ist genaus das, was ich gesucht habe!:thumbright:

Nochmals vielen Dank.

Uli

P.S. Jetzt muß nur noch der Kunde sein ok geben
Antworten