Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Считать данные из ячеек Excel

Delphi , Технологии , OLE Automation MSOffice

Считать данные из ячеек Excel

Автор: Rusher


var
 Excel: variant;
  i, j: word;
     S: string; 
begin
     Excel := CreateOleObject('Excel.Application');
     Excel.Workbooks.Open(FileName);
     Excel.Visible:=True;
     for i := 1 to 5 do
       for j := 1 to 5 do 
        begin
          S := Excel.Sheets[1].Cells[i,j].Text;
          ShowMessage(S);
        end;
end;

Here is a translation of the text into Russian:

Это программный код Delphi, который использует библиотеку объектов Excel для чтения данных из файла Excel и отображения их в сообщении.

Рассмотрим, что код делает:

  1. Первая строка var Excel: variant; объявляет переменную Excel типа variant, которая будет использоваться для хранения экземпляра объекта приложения Excel.
  2. Следующие две строки i, j: word; и S: string; объявляют переменные i, j и S типов word (короткое целое) и string, соответственно. Они будут использоваться как счетчики цикла и для хранения строкового значения из файла Excel.
  3. Код создает экземпляр объекта приложения Excel с помощью функции CreateOleObject, передавая строку 'Excel.Application' в качестве аргумента. Это делается в строке Excel := CreateOleObject('Excel.Application');.
  4. Следующие три строки Excel.Workbooks.Open(FileName);, Excel.Visible:=True; и for i := 1 to 5 do for j := 1 to 5 do открывают файл Excel, указанный переменной FileName (не показан в этом коде), устанавливают видимость приложения Excel в True и затем проходимся по диапазону ячеек (от строки 1, столбца 1 до строки 5, столбца 5).
  5. Внутри цикла код читает текстовое значение из ячейки [i, j] с помощью Excel.Sheets[1].Cells[i,j].Text, хранит его в переменной S и затем отображает его в сообщении с помощью ShowMessage(S).

Альтернативное решение было бы использовать встроенную поддержку Delphi для файлов Excel через компонент TExcelFile, который может читать и записывать данные без необходимости установки приложения Excel на системе. Вот пример, как можно модифицировать код:

uses ..., ExcelFile;

var
  XLS: TExcelFile;
  Sheet: TWorksheet;
  Cell: TCell;

begin
  XLS := TExcelFile.Create('example.xlsx');
  try
    XLS.Load();
    Sheet := XLS.Worksheets[1];
    for i := 1 to 5 do
      for j := 1 to 5 do
      begin
        Cell := Sheet.Cells[i, j];
        ShowMessage(Cell.Value);
      end;
  finally
    XLS.Free();
  end;
end.

В этом коде мы создаем экземпляр TExcelFile и загружаем файл Excel. Затем мы доступ ourselves к листу с помощью свойства Worksheets[1] и проходимся по ячейкам, как раньше. Однако вместо использования Excel.Sheets[1].Cells[i,j].Text, мы используем свойство Cells[i, j].Value для чтения значения ячейки.

Статья описывает программу на языке Delphi, которая считывает данные из ячеек Microsoft Excel и выводит их в сообщении.


Комментарии и вопросы


:: 2011-04-09 21:10:55 :: re:Считать данные из ячеек Excel

пользователь: Александр.

Так же не хватает в Uses дописать ComObj.


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: OLE Automation MSOffice ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100

Время компиляции файла: 2024-05-19 17:53:24
2024-05-20 07:56:25/0.0073409080505371/2