Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Klatsch und Tratsch (https://www.delphipraxis.net/34-klatsch-und-tratsch/)
-   -   Xlsx To Csv Konvertierer gesucht (https://www.delphipraxis.net/157695-xlsx-csv-konvertierer-gesucht.html)

API 21. Jan 2011 10:58

Xlsx To Csv Konvertierer gesucht
 
Hi,

kennt jemand einen kostenlosen (simplen) Xlsx nach CSV Konvertierer, welche mit über 65000 Zeilen klar kommt?

Chemiker 21. Jan 2011 12:40

AW: Xlsx To Csv Konvertierer gesucht
 
Hallo API,

EXCEL kannst Du nicht gebrauchen?

Bis bald Chemiker

API 21. Jan 2011 14:16

AW: Xlsx To Csv Konvertierer gesucht
 
Zitat:

Zitat von Chemiker (Beitrag 1076346)
Hallo API,

EXCEL kannst Du nicht gebrauchen?

Bis bald Chemiker

Nein, da nur Excel 2003 installiert ist und die max. Anzahl Zeilen bei 65536 liegt...

Chemiker 21. Jan 2011 15:34

AW: Xlsx To Csv Konvertierer gesucht
 
Hallo API,

http://www.microsoft.com/downloads/d...displaylang=de vielleicht hilft das weiter.

Bis bald Chemiker

API 21. Jan 2011 17:01

AW: Xlsx To Csv Konvertierer gesucht
 
Damit kann man xlsx Datein in älteren Excel Versionen öffnen. Das Problem mit den max. Anzahl Zeilen besteht jedoch weiterhin.

Klaus01 21. Jan 2011 20:10

AW: Xlsx To Csv Konvertierer gesucht
 
Guten Abend,


wenn es auch online sein darf -> link

Grüße
Klaus

API 22. Jan 2011 05:52

AW: Xlsx To Csv Konvertierer gesucht
 
Zitat:

Zitat von Klaus01 (Beitrag 1076465)
Guten Abend,


wenn es auch online sein darf -> link

Grüße
Klaus

Online kommt leider nicht in Frage, da es sich um sensible Daten handelt.
Gibt es vielleicht eine Delphikomponente die das kann?

Chemiker 22. Jan 2011 08:14

AW: Xlsx To Csv Konvertierer gesucht
 
Hallo,

http://www.tmssoftware.com/site/flexcelnet.asp

Bis bald Chemiker

Sir Rufo 22. Jan 2011 10:38

AW: Xlsx To Csv Konvertierer gesucht
 
Liste der Anhänge anzeigen (Anzahl: 1)
Dafür ist doch (quasi) alles an Bord ...

Zuerst diesen Treiber von MS laden

Und dann schaust du dir das kleine Projekt im Anhang an
(würde ich ja gerne, wenn ich Anhänge hochladen könnte :roll: aber der dreht sich hier nen Wolf)
EDIT Na endlich hat es geklappert :evil:

Das Geheimnis liegt im ConnectionString der ADOConnection
Delphi-Quellcode:
const
  // Per Format %s mit dem Dateinamen der XLSX-Datei ersetzen
  // HDR=YES => Tabelle hat Titelzeilen
  // IMEX=1 => alle Werte als Text einlesen
  XLSXConnectionString = 'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=%s;Extended Properties="Excel 12.0 Xml;HDR=YES;IMEX=1";';
Nach dem Öffnen der ADOConnection bekommt man mit GetTableNames( Strings : TStrings ) alle enthaltenen Tabellen aufgelistet.
Mittels einer ADOTable ( TableDirect := True !!! ) einfach einen TabellenNamen bei TableName eintragen und öffnen.

Jetzt braucht man nur noch eine Routine, die das DataSet in eine CSV-Datei schreibt (Hausmannskost) ... und fertig

EDIT
Ich sollte vielleicht anmerken, dass ich in meiner Beispielanwendung einen class helper (eigene Unit insDataSetHelpr ist nicht dabei) für TDataSet verwende, der selbiges um die Methode ExportToCSV erweitert.
Somit ist der Beispiel-Source nicht compilierbar ... (exe ist ja dabei) ... aber der Kern bleibt ja das Öffnen der Excel-Tabelle als DataSet und das kann man sehen ;)
Und so ein class helper oder procedure zum Ausgeben in CSV ist ja schnell getippselt


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 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