wie der Titel sagt, suche ich eine einfache Möglichkeit Daten (neue Zeile) an eine existierende Exeltabelle anzufügen.
Mit fpspreadsheet habe ich mich ein wenig auseinandergesetzt, scheitere aber leider.
Die Tabelle enthält Überschriften, und ansonsten nur Text. Zahlen werden (per Zellformatierung) auch auf "Text" gesetzt.
Später wird eine andere Software eine SQL-Abfrage an die Tabelle stellen.
Eigentlich braucht es keine visuelle Komponente, was die Tabelle angeht, aber ich habe trotzdem, da ich nicht sicher bin ob es auch ohne geht, einen Worksheetgrid.
Ich kann die Tabelle laden, und auch Werte eintragen.
Aber ich habe Probleme exakt die letzte, gefüllte Zeile zu identifizieren, um dann darunter eine neue Zeile anzufügen.
Ab und zu habe ich dazwischen eine Leerzeile.
Es wird auch eine Spalte mehr ausgefüllt, als eigentlich da ist.
Oder kann ich pauschal colcount -1 nehmen?
Es scheint, dass rowcount & colcount bei 1 anfangen zu zählen.
Org. Tabelle:
download/file.php?mode=view&id=7987
Ich lese die Anzahl der Zeilen & Spalten aus mit:
Code: Alles auswählen
procedure TForm1.Button1Click(Sender: TObject);
begin
Tabelle.LoadFromSpreadsheetFile(filename);
Spalte := Tabelle.ColCount;
Zeile := Tabelle.RowCount;
showmessage('Anzahl Zeilen: ' + inttostr(Zeile) +', Anzahl Spalten: ' + inttostr(Spalte));
end;
download/file.php?mode=view&id=7988
Da wird jeweils schon eine Zeile und eine Spalte mehr angezeigt, als ausgefüllt ist...
Auf "Knopfdruck" schreibe ich dann Testdaten:
Code: Alles auswählen
for x := 1 to Spalte do
begin
Tabelle.Cells[X,Zeile] := ('Test' + inttostr(X));
end;
download/file.php?mode=view&id=7986
Danke im Voraus für Tips und Hinweise
Michael