koniec pliku w excel

0

ja wiem, że temat był wiele razy poruszany na forum i kożystałam z info tam zaqwartych jednak nadal mam problem z odczytaniem końca danych w pliku excela. Mam taki kodzik:

begin
  if not OpenDialog1.Execute then Exit;
try
  try
    ExcelApplication1.Connect;
    ExcelApp := GetActiveOleObject('Excel.Application');
  except
    try
      ExcelApp := CreateOleObject('Excel.Application');
    except
      ShowMessage('Excel nie jest zainstalowany');
      Exit;
    end;
  end;
  ExcelApp.Workbooks.Open(OpenDialog1.FileName);

  i:= 2;

  while ExcelApp.Cells[i,1] <> '0' do

    begin
     ListItem:= ListView1.Items.Add;
     for j:= 1 to 7 do
       begin
         ListItem.Caption:= ExcelApp.Cells[i,1].Value;
         ListItem.SubItems.Add(ExcelApp.Cells[i,j].Value);
       end ;
    i:= i+1;
    end;

finally
  ExcelApp.Quit;
  ExcelApplication1.Disconnect;

end;

przy sprawdzeniu while ExcelApp.Cells[i,1] <> '0' do wyskakuje błąd Invalid variant operation.
Co może być tego przyczyną????
bardzo proszę o pomoc :d </delphi>

0

a spróbuj tak:

  i:= 2;
  s := ExcelApp.Cells[i,1].Value;
  while s <> '' do

    begin
     ListItem:= ListView1.Items.Add;
     for j:= 1 to 7 do
       begin
         ListItem.Caption:= ExcelApp.Cells[i,1].Value;
         ListItem.SubItems.Add(ExcelApp.Cells[i,j].Value);
       end ;
    
    i:= i+1;
   s := ExcelApp.Cells[i,1].Value;
   ShowMessage(s);
    end;
0

działa, dzięki :)
tylko trzeba wywalić: showMessage(s), bo to tylko sprawdza :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1