Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Excel-Datei mit Delphi auslesen - geht das? (https://www.delphipraxis.net/158892-excel-datei-mit-delphi-auslesen-geht-das.html)

FriendOfDelphi 7. Mär 2011 09:08

Excel-Datei mit Delphi auslesen - geht das?
 
Hallo Allerseits,

weiß jemand, ob man Excel-Dateien mittels Delphi auslesen kann?
Ich verwende Delphi 5 Professional.

mkinzler 7. Mär 2011 09:17

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Ist Excel installiert?

guinnes 7. Mär 2011 09:22

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Da gibts von Axolot Data Komponenten für Delphi

FriendOfDelphi 7. Mär 2011 09:27

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von mkinzler (Beitrag 1086386)
Ist Excel installiert?

Nicht zwingend.

guinnes 7. Mär 2011 09:43

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Bei den Komponenten braucht Excel nicht installiert sein

Bummi 7. Mär 2011 09:48

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Wenn Du ADO hast, kein Problem

FriendOfDelphi 7. Mär 2011 11:17

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von guinnes (Beitrag 1086400)
Bei den Komponenten braucht Excel nicht installiert sein

Hört sich gut an.
Kostet aber in der "XLSMini"-Version schon 99€...

FriendOfDelphi 7. Mär 2011 11:20

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von Bummi (Beitrag 1086402)
Wenn Du ADO hast, kein Problem

Ok, der Delphi-Praxis-Hint zeigt mir an, dass es sich bei ADO um Microsoft ActiveX Data Objects handelt, richtig?
Die Online-Recherche ergibt, dass diese Bibliothek wohl ab Windows 2000 zum Betriebssystem gehört.
Da Windows XP zum Einsatz kommt, ist ADO wohl vorhanden.

Wie mache ich das?
Hast Du einen Link mit einem Beispiel?

Jacques Murell 7. Mär 2011 11:25

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Guck mal hier:
http://www.delphipraxis.net/128818-e...tml#post877727
http://entwickler-forum.de/showthread.php?t=12250

FriendOfDelphi 7. Mär 2011 11:47

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von Jacques Murell (Beitrag 1086458)

Gibt es die "ADO-Komponenten" in Delphi 5?
Ich kann diese unter keinem Reiter finden.

guinnes 7. Mär 2011 12:10

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von FriendOfDelphi (Beitrag 1086468)
Gibt es die "ADO-Komponenten" in Delphi 5?
Ich kann diese unter keinem Reiter finden.

In der Enterprise-Version gibts die unter ADO

Dicki 7. Mär 2011 12:46

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Unter Lazarus/FreePascal gibt es die Komponente "fpspreadsheet"

https://lazarus-ccr.svn.sourceforge....fpspreadsheet/

Ob sie unter Delphi genutzt werden kann ich leider (noch) nicht sagen.

shmia 7. Mär 2011 13:00

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von guinnes (Beitrag 1086481)
Zitat:

Zitat von FriendOfDelphi (Beitrag 1086468)
Gibt es die "ADO-Komponenten" in Delphi 5?

In der Enterprise-Version gibts die unter ADO

Ausserdem konnte man früher für D5 Prof. die ADO-Komponenten für $100 nachkaufen.
Bei D6 Prof. und D7 Prof. sind die ADO-Komponenten serienmässig an Bord.

FriendOfDelphi 8. Mär 2011 08:26

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe bei Torry die Erweiterung "ADO-based TDataSet Descendants v.3.38" heruntergeladen, da diese kostenlos ist.
Nach der Installation, die problemlos geklappt hat, befindet sich ein neuer Reiter mit dem Namen "DeerSoft" in der IDE.
Innerhalb des Reiters können nun folgende Komponenten ausgewählt werden: "DMaster", "DTable", "DQuery" und "DUpdateSQL".
Die "DMaster"-Komponente scheint die Verbindung zum ADO-Objekt herzustellen, da dort "Connection" ausgewählt werden kann.
Zur Auswahl stehen hier die im angehängten Bild dargestellten Verbindungen.
Eine direkte Excel-Vebindung gibt es nicht.
Mit welcher davon kann denn eine Verbindung zu einer Excel-Datei hergestellt werden?

Bummi 8. Mär 2011 08:54

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Ich kenne Deine Komponente nicht üblicherweise sieht der Connectionstring aus wie z.B. hier beschrieben

http://www.connectionstrings.com/excel-2007

FriendOfDelphi 8. Mär 2011 09:04

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von Bummi (Beitrag 1086728)
Ich kenne Deine Komponente nicht üblicherweise sieht der Connectionstring aus wie z.B. hier beschrieben

http://www.connectionstrings.com/excel-2007

Vielen Dank für die schnelle Antwort.
So wie es aussieht, kann die Komponente das nicht.
Kannst Du mir eine (freie) Komponente empfehlen?

Bernhard Geyer 8. Mär 2011 09:07

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Der Connection-String sollte auch bei dieser Komponenten möglich sein. Es wird bei deinen Installierten Treibern über die JET-Engine gegangen.

Aber bedenke: Beim Zugriff über ADO/JET gibt es öfters ungereimtheiten das Felder/Zellen nicht so eingelesen werden wie gedacht. Hier schlägt die "intelligenz" des Jet-Treibers zu der jeder Spalte einen Datentyp zuweisen (muss?) der u.U. nicht zu allen Zellen dieser Spalte passt.

Mit weniger Problem verbunden ist der Zugriff über OLE oder ein gut implementierter native Dateiformat-Leser.

FriendOfDelphi 8. Mär 2011 10:15

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1086732)
Der Connection-String sollte auch bei dieser Komponenten möglich sein. Es wird bei deinen Installierten Treibern über die JET-Engine gegangen.

Aber bedenke: Beim Zugriff über ADO/JET gibt es öfters ungereimtheiten das Felder/Zellen nicht so eingelesen werden wie gedacht. Hier schlägt die "intelligenz" des Jet-Treibers zu der jeder Spalte einen Datentyp zuweisen (muss?) der u.U. nicht zu allen Zellen dieser Spalte passt.

Mit weniger Problem verbunden ist der Zugriff über OLE oder ein gut implementierter native Dateiformat-Leser.

Ich gehe an das Thema ganz unvoreingenommen heran. Das Thema ADO habe ich nur aufgenommen, da es mir hier vorgeschalgen wurde.
Da das scheinbar mit Delphi 5 Professional sowieso ein Gemache ist und so wie ich Dich verstanden habe fehlerbehaftet ist (sein kann), ist das jetzt erledigt.
Hast Du denn ein Beispiel, oder ein Tutorial das sich mit den beiden von Dir vorgeschlagenen Möglichkeiten beschäftigt, mit deren Hilfe ich mich einlesen kann?

p80286 8. Mär 2011 11:42

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Da Excel nicht installiert ist, fällt OLE wohl flach.
Wenn Du Deine Excel-Daten als ASCII-delimited (.csv) Datei bekommen kannst, ist der Rest nur noch Pillepalle.

Gruß
K-H

FriendOfDelphi 8. Mär 2011 13:57

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von p80286 (Beitrag 1086765)
Da Excel nicht installiert ist, fällt OLE wohl flach.
Wenn Du Deine Excel-Daten als ASCII-delimited (.csv) Datei bekommen kannst, ist der Rest nur noch Pillepalle.

Gruß
K-H

Ok. Wieder was gelernt.
Also bleibt nur noch die Umwandlung der Excel-Datei in eine "*.csv"-Datei, oder die Verwendung einer zugekauften Komponente, wie die vonAxolot Data.

-187- 8. Mär 2011 14:18

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Wenn dir die Datei als .csv Datei vorliegt kannst du diese in einer StringList laden und via Pos,Copy splitten.

scrat1979 8. Mär 2011 14:50

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Ich weiß nicht, ob die Komponente schon erwähnt worden ist, hab grad keine Zeit, den Thread zu lesen.

Diese Komponente hier kann auch sehr viel und ist auch nicht sehr teuer.... Ab Delphi 4!

p80286 8. Mär 2011 15:32

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von -187- (Beitrag 1086806)
Wenn dir die Datei als .csv Datei vorliegt kannst du diese in einer StringList laden und via Pos,Copy splitten.

Vorsicht, das kann in die Hose gehen, wenn in einem Feld Zeilentrenner (CRLF) enthalten sind.
Aber hier geistern eigentlich genug Vorschläge herum, wie man .csv -Dateien auslesen kann.

Gruß
K-H

guinnes 8. Mär 2011 17:41

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von FriendOfDelphi (Beitrag 1086799)
oder die Verwendung einer zugekauften Komponente, wie die vonAxolot Data.

Ich weiss nicht, welche Einschränkungen die nicht registrierte Version hat, die Version, die ich benutze hat nur beim Schreiben eine Einschränkung : In der Zelle 0,0 steht ein Hinweis ( und natürlich kein Quelltext, aber damit kann ich leben ). Ich benutze die Version schon bestimmt 8 Jahre, vielleicht findest du die noch im Netz ( XLSRead und XLSWrite ).
Ich werde morgen auf der Arbeit mal sehen, ob ich diese alten Dinger weiterverteilen kann

Sir Rufo 8. Mär 2011 18:19

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Zitat:

Zitat von FriendOfDelphi (Beitrag 1086731)
Zitat:

Zitat von Bummi (Beitrag 1086728)
Ich kenne Deine Komponente nicht üblicherweise sieht der Connectionstring aus wie z.B. hier beschrieben

http://www.connectionstrings.com/excel-2007

Vielen Dank für die schnelle Antwort.
So wie es aussieht, kann die Komponente das nicht.
Kannst Du mir eine (freie) Komponente empfehlen?

Das hat mit der Komponente nicht wirklich etwas zu tun, da du hier per OLEDB zugreifst (zugreifen möchtest).
Wenn für deine Datenquelle (wohl Excel 2007/2010) kein OLEDB-Treiber auf dem Rechner installiert ist,
dann geht das eben nicht (keine Arme, keine Kekse).

Bei der Installation vom Office-Paket werden diese Treiber automatisch installiert.

Alle anderen ohne Office auf dem Rechner schauen hier mal vorbei

Christian Seehase 8. Mär 2011 18:35

AW: Excel-Datei mit Delphi auslesen - geht das?
 
Moin Thomas,

Zitat:

Zitat von Bummi (Beitrag 1086402)
Wenn Du ADO hast, kein Problem

Kein Problem würde ich jetzt nicht sagen.
Meiner Erfahrung nach kommt man nicht immer an alles ran, was man gern hätte, und dass ohne System.
Es ist zwar schon ein paar Jahre her, dass ich das ausprobiert habe, aber auf Grund der Probleme habe ich mich dann doch lieber für den direkten Zugriff entschieden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz