Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Exel Tabelle Erstellen (https://www.delphipraxis.net/85407-exel-tabelle-erstellen.html)

remie 30. Jan 2007 13:38


Exel Tabelle Erstellen
 
Hallo Leute
ich muss daten in ein XLS file schreiben,
habe hier im Formun auch gefunden wie das geht ( ADO Connection und dann per sql )
Nun sollte ich da auch eine Neue Tabelle erstellen.
Habe es als sql versucht:
Delphi-Quellcode:
var
  Tabelle : String;
begin
  Tabelle:='['+edit1.text +'$]';
   // die eckigen Klammern sind nötig weil der Tabellenname Sonderzeichen enthält ("$")
  AdoQueryXLS.cr
  With AdoQueryXLS do
  begin
    close;
    Connection:=Adoconn;
    // Beispiel "Insert"
    SQL.Text:='CREATE TABLE ''test'' (''name'' ,''vorname'')' ;
    ExecSQL;
   
  end;
end;
Da bekomme ich aber Fehler in Creat Table.
auch wenn ich einen Datentyp ( varchar (20) ) angebe.
Wie muss ich denn das angeben, damit er mir eine neue Tabelle erstellt ???

Flips 30. Jan 2007 13:50

Re: Exel Tabelle Erstellen
 
Hi.

Probiers mal mit

Delphi-Quellcode:
SQL.Text := 'CREATE TABLE "test" ("name" VARCHAR( 50 ) NOT NULL, "vorname" VARCHAR( 50 ) NOT NULL)';
Das is jetzt SQL-Syntax die stimmen müsste, erstellte eine Datenbank mit dem Namen "test" und den Variablen
name -> string mit 50 Zeichen
vorname -> string mit 50 Zeichen

Wenn ich mich mal nicht irre... :gruebel:

remie 30. Jan 2007 13:57

Re: Exel Tabelle Erstellen
 
das hatte ich schon probiert ohne erfolg da kommt der gleiche fehler ...
gibts vllt ne andere möglichkeit auf nen xls zuzugreifen, und die sachen zu machen ?

madtom 30. Jan 2007 13:59

Re: Exel Tabelle Erstellen
 
Hallo,

soweit ich weis, kannst Du über SQL keine Tabellen in Excel erstellen. Das eigentliche
Problem ist, das es sich in Excel ja nicht um "Tabellen" handelt, sondern um WorkSheets...
Du müstest also ein neues WorkSheet erzeugen und über das Ado-Recordset die Daten in die
ensprechenden Felder schreiben. Guck Dir mal die entsprechenden Befehle und Beispiele
in der VBA-Hilfe in Excel an, es sollte sich fast 1 zu 1 in Delphi umsetzen lassen.

remie 30. Jan 2007 14:22

Re: Exel Tabelle Erstellen
 
Hm da habe ich nicht wirklich was gefunden ...
aber bei Delphi sind ja auch Office Komponenten dabei (TExcelWorkbook,TExcelApplication,TExcelQueryTable ,TExcelChart,TExcelWorksheet)
kann ich mit dehnen kein XLS bearbeiten bzw. nen neue Tabelle anlegen

madtom 30. Jan 2007 14:53

Re: Exel Tabelle Erstellen
 
Hallo,

sicher kannst Du die vorhandenen Wrapperkomponenten aus Delphi nutzen. Der Werdegang
bleibt allerdings der gleiche: (kein Anspruch auf Vollständigkeit)

1. mit Excel verbinden
2. Worksheet erzeugen
3. über das Ado-Recordset die Zellen mit Inhalten füllen

Eigentlich sollte es aber auch Beispiel dazu in der DP geben

Andidreas 30. Jan 2007 15:13

Re: Exel Tabelle Erstellen
 
hast dus schon mal über ole probiert???
so hab ich damals ein excel erstellt und mit daten gefüllt als ich mich
damit rumgeschlagen habe!

ich wette mit dir hier geistern noch ein paar beispiele von mir rum ;)
müsstest halt mal die suche bemühen ;)


edit:
hab schon nen link gefunden:
OLE EXCEL


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 Uhr.

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