Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbank in Excel schreiben (https://www.delphipraxis.net/10501-datenbank-excel-schreiben.html)

endyexcellent 20. Okt 2003 10:12


Datenbank in Excel schreiben
 
Halloooo.

Habe gehört es ist möglich Datensätze in ein Excel-Sheet zu schreiben. hat das schonmal jmd gemacht? Weiß jmd mehr darüber?

Ich weiß nicht so recht wie ich anfangen soll. Weiß wie man ein Excel-Sheet öffnet und Text schreiben kann. Aber wie ich meine Datenbank einbinde... kein Plan.

Weiß jmd mehr?

Danke im Vorraus.

Mfg,
enDyExcellent

MrSpock 20. Okt 2003 10:47

Re: Datenbank in Excel schreiben
 
Hallo andyexcelent,

wenn du weißt, wie du in ein Excelsheet einzelne Einträge schreibst, kannst du einfach mit einer Schleife alle Datensätze durchlaufen:

Delphi-Quellcode:
myDBF.First;
while NOT myDFB.EOF do
begin
  for i := 0 to myDBF.FieldCount-1 do
    SchreibeNachExcel(myDBF.Fields[i].AsString);
  myDBF.Next;
  NaechsteExcelZeile;
end;
Die Funktion SchreibeNachExcel übernimmt einen String und schreibt ihn ins nächste ExcelFeld. Die Funktion NaechsteExcelZeile setzt den Excelcursor auf das erste Feld der nächsten Zeile.

endyexcellent 20. Okt 2003 12:37

Re: Datenbank in Excel schreiben
 
Wie seiht denn die Prozedur "SchreibeNachExcel" aus? :gruebel:

subw00fer 20. Okt 2003 13:26

Re: Datenbank in Excel schreiben
 
Hallo!

Soviel ich verstehe willst du Daten aus einer Datenbank in eine Excel-Datei schreiben.

Ganz einfach:

Code:
f:Textfile;
...                            
AssignFile(f,'C:\Excel.csv');
Rewrite(f);
...                           //Daten auslesen
Write(f,'Hallo;wie;gehts');   //Strichpunkten=Trennzeichen zwischen den Spalten - mit chr(13)+chr(10) kannst du in die
CloseFile(f);                 //nächste Zeile wechseln
...

mfg subw00fer

Nimoee 20. Okt 2003 13:57

Re: Datenbank in Excel schreiben
 
Hallo,

bist du dir ganz sicher dass das so geht??? Ich glaubs dir nicht!

Nimoee

endyexcellent 20. Okt 2003 14:03

Re: Datenbank in Excel schreiben
 
Hihi. Ich glaub auch nicht, daß das so geht.....

...Hat das denn noch niemand gemacht?

Jens Schumann 20. Okt 2003 14:06

Re: Datenbank in Excel schreiben
 
Hallo,
leider fehlt die Angabe der Datenbank und der Excel-Version.
Verwendest Du die ADO-Komponenten oder den nativen Zugriff über ADO.
Gibt es überhaupt einen ADO-Provider für die Datenbank ?

Ab Excel-2000 kann ein WorkSheet über ein ADO-Recordset angesprochen werden.
Das einfachste wäre dann das Recordset aus der Datenbank in das Excel-Recordset zu kopieren.

Da ich noch nie Daten aus einer Datenbank nach Excel schieben musste habe hierfür auch kein Beispiel

endyexcellent 20. Okt 2003 14:30

Re: Datenbank in Excel schreiben
 
Okay. hab eine Lösung gefunden. Bin aber noch nicht zufrieden :coder:
Kann jetzt Datensätze einer DB-Tabelle in ein Excel-Sheet schreiben, allerdings nur die Datensätze, die Spaltenbezeichnungen fehlen.
Ich möchte allerdings die Spaltennamen in die erste Zeile schreiben, wie habe ich Zugriff auf die Spaltennamen meiner DB-Tabelle? Muss ich die per Text eingeben oder kann ich die abrufen?

MrSpock 20. Okt 2003 20:45

Re: Datenbank in Excel schreiben
 
Hallo andyexcellent,

du sagtest doch, du weißt, wie du einen Wert schreibst!?
Ich meine, es geht über:
Code:
ExcelWorksheet.Cells.CellRange.Item[Row,Col].Value='Eintrag';
Die Feldnamen bekommst du über:

Code:
 for i := 0 to myDBF.FieldCount-1 do
    SchreibeNachExcel(myDBF.Fields[i].FieldName);

subw00fer 21. Okt 2003 09:04

Re: Datenbank in Excel schreiben
 
Zitat:

Ich glaubs dir nicht!
Dann probiers aus!


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 Uhr.
Seite 1 von 4  1 23     Letzte »    

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 by Thomas Breitkreuz