Hallo, ich möchte eine ComboBox und 3 StringListen mit Daten aus einer Excel-Datei füllen und habe folgende Frage:
wie kann ich ein bestimmtes Sheet auswählen ?
und wie kann ich die letzte Zeile einer bestimmten Spalte (B) ermitteln ?
hier mein code:
(Teile davon sind von 'DBR Delphi-Ecke'
www.s170867368.onlin...e/delphi/lastrow.php)
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37:
| var xcl : OleVariant; sl1, sl2, sl3 : TStringlist;
const xlCellTypeLastCell = 11;
procedure Laden(Datei: string; list: TStrings); var i, r: integer; begin list.clear; xcl := createOleObject('Excel.Application'); xcl.Workbooks.Open(Datei); r := xcl.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Row; for i := 3 to r do begin list.add(xcl.range['B' + inttostr(i)]); sl1.add(xcl.range['C' + inttostr(i)]); end; xcl.quit; end;
procedure TForm1.Button1Click(Sender: TObject); var Datei: string; begin if OpenDialog1.Execute then begin sl1 := TStringlist.create; Datei := OpenDialog1.FileName; Laden(Datei, ComboBox1.items); ComboBox1.ItemIndex := 0; Edit1.Text := sl1.Strings[0]; end; end; |
MfG Mario
Moderiert von
Martok: Delphi-Tags gesetzt