![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
выгрузить массив в Excel [D6, WinXP]
Aleksik © (2005-10-07 22:09:00)Доброго времени уважаемые! Не отавайтесь безучастными, помогите советом. Надо выгрузить одномерный массив вещественных чисел в файл Excel, а я первый раз с этим сталкиваюсь. Как это можно сделать? Понимаю, что не первый задаю этот вопрос, но пока в архиве не нашел ничего подходящего. Заранее спасибо.
vl_chel (2005-10-10 12:09:00) [1]Подгрузить библиотеку типов экселя Project->Import Type Library выбрать эксель и пользоваться, получится на этапе разработки контролировать правильность вызовов. Справка по АПИ экселя в файле C:\Program Files\Microsoft Office\Office\1049\VBAXL9.CHM
учтите что сгенерируется файл ок 29000 строк см на описаеие класса TExcelApplication или около того
Palladin (2005-10-09 22:35:00) [2]
> Вроде были еще компоненты, которые это делали
http://tiravi.narod.ru/fc.zip
YurikGL (2005-10-09 21:39:00) [3]
> Сразу в файл - это создать эксель, но не показывать его.
Вроде были еще компоненты, которые это делали. Можно еще через ADO выгружать.
TStas (2005-10-09 19:47:00) [4]Посмотрите Кобра и КОМ, там есть масса примеров. Сразу в файл - это создать эксель, но не показывать его.
Palladin (2005-10-09 16:08:00) [5]OleVariant
Aleksik (2005-10-09 13:22:00) [6]to Palladin
какого типа переменная xlApp?
Aleksik (2005-10-09 13:16:00) [7]
> Выгрузить при живом Office или самостоятельно формировать
> файл xls?
Желательно сразу сформировать файл.
Palladin (2005-10-09 11:22:00) [8]xlApp:=CreateOleObject('Excel.Application');
...
xlDDE:=TDDEClientConv.Create(nil);
xlDDE.SetLink('EXCEL',<имя листа>);
xlDDE.PokeData(OLEVariant(xlApp.Range[<ВерхняяЛеваяЯчека>,<НижняяПраваяЯчейка>]).Address[ReferenceStyle:=xlR1C1], pchar(buffer));
xlDDE.free;
где:
buffer:String
содержит табличные данные с разделителем полей TAB(#9) и разделителем строк CRLF(#13#10)
YurikGL (2005-10-08 13:28:00) [9]
> Можно сделать через клипборд:
Крайне не советую т.к. у пользователя в буфере могло что-то храниться.
lookin (2005-10-08 12:24:00) [10]Выгрузить при живом Office или самостоятельно формировать файл xls?
Savek (2005-10-08 09:16:00) [11]Можно сделать через клипборд:
...
Mem.Lines.Add('Столбец1'+#9+'Столбец2'+#9+'Столбец3');
Mem.SelectAll;
Mem.CopyToClipboard;
ExcelApp.WorkBooks[1].WorkSheets[Sheet[1]].Paste;
YurikGL (2005-10-07 22:29:00) [12]http://delphiworld.narod.ru/base/on_waves_of_integrations3.html