Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Пользователь


Сообщения: 121
Благодарности: 7

Профиль | Отправить PM | Цитировать


n := OpenFile(); - это у меня была функция сделана для открытия файла...
переделал как вы писали выше, вроде и правда заработало.

получилось как то вот так:

Код: Выделить весь код
procedure TForm1.Button1Click(Sender: TObject);
var excel : variant;
i, j, RowsCount: integer;

begin
Form1.OpenDialog1.Execute();
excel := CreateOleObject('excel.application');
excel.workbooks.open[Form1.OpenDialog1.FileName];
RowsCount := excel.ActiveSheet.UsedRange.Rows.Count;
excel.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Activate;

  for i := 1 to RowsCount do
    begin
      sg1.cells[i - 1, 0] := excel.cells[2, i].Value; // время
      sg1.cells[i - 1, 1] := excel.cells[3, i].Value; // фио
      sg1.cells[i - 1, 2] := excel.cells[4, i].Value; // номер
    end;
  excel.activeworkbook.close;
  excel.application.quit;
end;
осталось только допилить код чтобы он все данные без явного указания ячеек расставлял (я про такие строки sg1.cells[i - 1, 0] := excel.cells[2, i].Value; ) ...
будем думать и химичить, если не дойдёт как наверно ещё обращусь


PS: только одного не понял, вроде бы в sg1.cells[i , j] , i - это столбец, а j - это строка... но по вашему примеру он мне строки в столбцы выводил, а так как написано у меня, он выводит строки в строчку, как мне и хотелось... в чём же загадка?

Последний раз редактировалось anatoly_neo, 21-04-2011 в 14:15.


Отправлено: 14:09, 21-04-2011 | #8