![]() |
Daten aus DB in StringGrid und aus StringGrid in Exceldatei
Hallo!
Folgendes Problem. Ich mache eine Auswertung eines Datenbestandes. Da müssen die Mieten pro QM für den Jahrgang 2002-2004 von 1960 bis heute in einem StrinGrid angezeigt werden. Sieht ungefähr so aus. 1960 1961 1962 1963 usw. ------------------------ 3,40 4,20 4,48 4,90 3,29 4,77 5,79 5,80 Hier müssen alle Bescheid durchlaufen werden. Sobald eine Miete gefunden ist muss diese ins obige Raster eingefügt werden.(Es kann auch mehrere in einem Fall geben, denn muss die letzte eingetragen werden) Dann gehts zum nächsten Fall. Wie kann ich die Daten mit Hilfe von Delphi anzeigen lassen und wie kann ich sie dann vom StrinGrid in einer Exceldatei speichern? MfG recordable Schonmal Danke für die Antworten |
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
Warum kein DBGrid ? Und das Dataset direkt in Excel ?
|
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
Die Daten sollen bloss angezeigt werden und dann muss ich mit der rechten Maustaste auf Exceldatei erstellen klicken oder sowas in der Art. Wenns mit ner DBGrid funktioniert? Ich bin blutiger Anfänger! :oops: Datenbank is Oracle. Und ich muss den Zeitraum frei wählen können z.B. 1964-1978 oder 1972- 1999.
|
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
Liste der Anhänge anzeigen (Anzahl: 1)
So solls ungefähr aussehen!
|
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
na das machst du mit ner TQuery und nem anständigen SQL Code ... an die knüpfste ne DataSource und nen DBGrid
das mit dem Excel ist ganz easy ... du brauchst nur das Dataset durchzugehen und Tab Delimiter für jede Spalte und nen Umbruch für jede Zeile machen ... das ganze dann als *.xls datei speichern ... |
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
Hier die Procedure um das Excel File zu erstellen ...
Delphi-Quellcode:
procedure TfrmXTMT.QueryToExcelFIle(Query: TQuery; TargetFilename: string; Header:boolean);
var XFile:TStrings; i:Integer; str:string; begin XFile := TStringList.Create; with Query do begin str := ''; if Header then begin for i := 0 to Fields.Count-1 do str := str + FieldDefs[i].Name + #9; XFile.Add(str); end; FindFirst; while Found do begin str := ''; for i := 0 to Fields.Count-1 do str := str + Fields[i].AsString + #9; XFile.Add(str); FindNext; end; end; XFile.SaveToFile(TargetFilename); XFile.Free; end; |
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
Delphi-Quellcode:
So hat ich mir das eigentlich gedacht.
Query1.SQL.Clear;
Query1.SQL.Add('select max(TATSAECHLENTGELT_QM) from feh_bearbeitung where TATSAECHLENTGELT_QM is not null and TATSAECHLENTGELT_QM > 0'); Query1.SQL.Add('and leistpflichtvon >= ''01.01.2002'' and leistpflichtvon <= ''01.01.2004'''); Query1.SQL.Add('and id_wohnung in ( select id_wohnung from woh_bestand where id_wohnung = feh_bearbeitung.id_wohnung and datum_bewilligungsbescheid >= ''01.01.1960'' and datum_bewilligungsbescheid <=''31.12.1960'')'); Query1.SQL.Add('group by tatsaechlentgelt_qm'); Query1.Active := true; while not Query1.Eof do begin if CheckBox1.Checked then begin stringgrid1.Cols[1].Add(Query1.fieldbyname('max(TATSAECHLENTGELT_QM)').AsString); StringGrid1.RowCount := StringGrid1.RowCount+1; end; Query1.Next end; [edit=MrSpock]Delphi Code Tags eingefügt. Mfg, MrSpock[/edit] |
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
mach das mal in DELPHI tags ....
anstatt dem
Delphi-Quellcode:
mach
Query1.Active := True
Delphi-Quellcode:
Query1.Open;
und das mit dem Stringgrid kannst du komplett weglassen wenn du nen DBGrid an die DataSource hängst und die Datasource mit deiner Query verknüpst ...
Delphi-Quellcode:
DataSource1.DataSet := Query1;
DBGrid1.DataSource := DataSource1; |
Re: Daten aus DB in StringGrid und aus StringGrid in Excelda
Liste der Anhänge anzeigen (Anzahl: 1)
Aber wie bekomm ich jetzt für jedes jahr ne spalte? Sorry wenn ich nerve :oops: Jetzt siehts so aus!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 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 by Thomas Breitkreuz