![]() |
![]() ![]() ![]() ![]() |
|
Сохранение данных из TListView в XLSDelphi , Технологии , OLE Automation MSOffice
Автор: dDan
{ **** UBPFD *********** by delphibase.endimus.com ****
>> Сохранение данных из ListView в *.xls
Сохранение данных из ListView в *.xls
Зависимости: ComObj
Автор: dDan, ddan2002@mail.ru
Copyright: dDan
Дата: 3 декабря 2003 г.
***************************************************** }
procedure ListToExcel(ListView: TListView);
var
row, i: integer;
Range, Sheet: VAriant;
begin
try
Excel := CreateOleObject('Excel.Application');
except
raise Exception.Create('Невозможно поключиться к серверу Excel');
end;
Screen.Cursor := crHourGlass;
Excel.SheetsInNewWorkBook := 1;
Excel.WorkBooks.Add;
Sheet := Excel.Workbooks[1].Sheets[1];
Range := Sheet.Columns;
Range.Columns[1].ColumnWidth := 30;
Range.Columns[n].ColumnWidth := 30;
Range.Columns[n + 1].ColumnWidth := 30;
Range.Columns.Font.Size := 8;
Range := Sheet.Range['a1:f1'];
Range.Font.Size := 15;
Range.Font.Bold := True;
Range.Columns.Interior.ColorIndex := 6;
Range.HorizontalAlignment := 3;
Sheet.Cells[1, 2] := 'Данные на' + DateToStr(Date); //Заголовок
Range := Sheet.Range['a2:f2'];
Range.Font.Size := 10;
Range.Font.Bold := True;
Sheet.Cells[2, 1] := 'АА'; //Названия столбцов
Sheet.Cells[2, n] := 'ББ';
Sheet.Cells[2, n + 1] := 'вв';
Row := 3;
for i := 0 to List.Items.Count - 1 do
begin
Sheet.Cells[Row, 1] := ListView.Items.Item[i].Caption;
Sheet.Cells[Row, 2] := ListView.Items.Item[i].SubItems[n];
Sheet.Cells[Row, 3] := ListView.Items.Item[i].SubItems[n + 1];
inc(Row);
end;
Screen.Cursor := crDefault;
if SaveDialog.Execute then
Excel.WorkBooks[1].SaveAs(exs.FileName); //Сохраняем
Excel.Visible := True; //Показываем Excel
end;
Перевод контента на русский язык: Это код Delphi, который сохраняет данные из контрола TListView в файл Excel (.xls). Код использует unit ComObj для создания экземпляра Excel и манипуляции его объектами. Вот разбивка того, что код делает:
Вот некоторые предложения по улучшению:
В качестве альтернативного решения можно использовать библиотеку ExcelExport, которая предоставляет более простой способ экспорта данных из приложений Delphi в файлы Excel. Это бы устранило необходимость создания экземпляра Excel и манипуляции его объектами вручную. Вот пример модификации кода с использованием ExcelExport: Код создает новый файл Excel, устанавливает лист, записывает строку заголовка и данные элементов в лист, а затем сохраняет файл. Он намного проще и более компактен, чем оригинальный код! В статье описывается код на Delphi, который позволяет сохранять данные из TListView в файл XLS с помощью библиотеки ComObj. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: OLE Automation MSOffice ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||