AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbank in Excel schreiben
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbank in Excel schreiben

Ein Thema von endyexcellent · begonnen am 20. Okt 2003 · letzter Beitrag vom 3. Dez 2003
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#21

Re: Datenbank in Excel schreiben

  Alt 25. Okt 2003, 20:25
Hallo JoJo,

ob über TTable oder TQuery sollte egal sein.

Mit welcher Stelle in meinem Quelltext kommst Du nicht voran?


mfg
eddy
  Mit Zitat antworten Zitat
JoJo

Registriert seit: 5. Okt 2003
4 Beiträge
 
Delphi 6 Professional
 
#22

Re: Datenbank in Excel schreiben

  Alt 27. Okt 2003, 07:50
Hi Eddy,

also Dein Source ist ok, habe ich getestet.
Meine Probleme sind:

A: Ich habe ein TimeStamp-Format '12.10.2003 03:34:22' das wird aber NICHT so übernommen, Excel schneidet die Sekunden ab.

B: Die Routine springt irgendwann raus. (Datenbank hat ca. 30.000 Datensätze)

Mann müßte Excel wohl noch den Datentyp mit übergeben.

Ich denke das müßte so Funktionieren, doch wie wird der DatenTyp an Excel übergeben.

Var DTyp : Variant;

Code:
try
    Excel.Workbooks.Add;    // leere Tabelle wird erzeugt, 1. Blatt angewählt
    Tab1.First;
    zl := 1; // Feldbezeichner übertragen
    for i := 0 to Tab1.FieldCount - 1 do begin
      s := Tab1.FieldDefs.Items[i].Name;
      [B]DTyp := Tab1.FieldDefs.Items[i].DataType;[/B]
      Excel.Cells[1, i+1] := s;  // zeile,spalte
      [B]Excel.xxxxxx       := DTyp;[/B]    
    end;
Hmmmm, ok ich versuche mal weiterhin mit :

ExcelApplication
ExcelWorkBook
ExcelWorkSheet

obwohl ich da auch erstmal nicht weiterkomme.

Gruß JoJo

[edit=Sharky]Doppelposting gelöscht. Mfg, Sharky[/edit]
  Mit Zitat antworten Zitat
endyexcellent

Registriert seit: 24. Sep 2003
Ort: Ulm
37 Beiträge
 
#23

Re: Datenbank in Excel schreiben

  Alt 27. Okt 2003, 08:27
Habe eine Frage:

mit
Code:
Excel.Workbooks.Add;
erzeuge ich ja eine leere Tabelle und das 1. Blatt wird angewählt.
Wie wähle ich das 2.Blatt an?
Kann ich die Blätter umbenennen?


Greetz,
enDyExcellent
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#24

Re: Datenbank in Excel schreiben

  Alt 27. Okt 2003, 13:13
Hallo JoJo,

Dein Problem unter A ist sicherlich lösbar, wenn Du in Excel Format-Benutzerdefiniert TT.MM.JJJJ hh:mm:ss:ms eingibst. (Bei den Postleitzahlen dürften nach dem Transfer auch die führenden Nullen fehlen.)

Problem B: ich hab's mal ausprobiert. Eine Datenbank mit 2780 Einträgen und 33 Feldern (nur +, N, A, L, kein Blob) je Eintrag.
Erstens dauert's ewig (ca. 8 Minuten für 2361 Sätze) und zweitens gab's irgendein OLE-Exception bei Datensatz 2361. (3xversucht, auch Neuaufbau der Indexdateien hat nicht geholfen --> nicht weiter gesucht).

Die gleiche Datei (2780 Sätze) war in 2 Sekunden übertragen und das Einlesen in Excel war Sekundensache.

Bei 30.000 Datensätzen empfehle ich Dir den Umweg über CSV zu nehmen.

mfg
eddy
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#25

Re: Datenbank in Excel schreiben

  Alt 27. Okt 2003, 13:25
Hallo endyexcellent,

was Du willst sollte gehen. Ich habe das nicht weiter ausprobiert, aber Du findest alle notwendigen Informationen unter Wie kann ich Excel mit OLE-Automation steuern?

Ich hoffe, es hilft Dir weiter.

mfg
eddy
  Mit Zitat antworten Zitat
endyexcellent

Registriert seit: 24. Sep 2003
Ort: Ulm
37 Beiträge
 
#26

Re: Datenbank in Excel schreiben

  Alt 29. Okt 2003, 11:52
Danke eddy. Auf der Seite war ich schon. Hat mir nicht weitergeholfen. Hab's mit anderen Dokumentationen und Büchern hinbekommen.

Anderes Problem: mit
Code:
Excel.Cells.select;
Wähle ich ja den gesamten Bereich aus, sprich ich markiere alles.

Wie mache ich das rückgängig?
  Mit Zitat antworten Zitat
endyexcellent

Registriert seit: 24. Sep 2003
Ort: Ulm
37 Beiträge
 
#27

Re: Datenbank in Excel schreiben

  Alt 29. Okt 2003, 12:52
Hat jemand eine Ahnung/Idee wie ich etwas in das zweite Worksheet schreiben kann?
Oder in das dritte?

Ich kann nur in das erste schreiben...
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#28

Re: Datenbank in Excel schreiben

  Alt 30. Okt 2003, 06:57
Hallo endyexcellent,

dazu musst du dir die 2. Seite als Objekt holen und darüber auf die Zellen zugreifen:

ZweiteSeite := ExcelApplication1.Worksheets.Item['Seite2'] as _Worksheet;
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
endyexcellent

Registriert seit: 24. Sep 2003
Ort: Ulm
37 Beiträge
 
#29

Re: Datenbank in Excel schreiben

  Alt 30. Okt 2003, 07:27
@MrSpock

Code:
_Worksheet
kennt Delphi bei mir nicht. Muss ich irgendwelche units einfügen?
  Mit Zitat antworten Zitat
Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#30

Re: Datenbank in Excel schreiben

  Alt 30. Okt 2003, 08:09
Hallo endyexcellent,

vielleicht solltest Du Dir doch den o.g. Link etwas genauer ansehen. Da ist Deine Frage beantwortet unter
der Überschrift: Wie kann ich ein Workbook öffnen

Natürlich mußt Du das noch genau auf Deinen Quelltext abstimmen.

mfg
eddy
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:57 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