Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Delphi+Excel


Автор: Тиль 5.5.2008, 16:23
Никто не знает с помощью какого компонента подцепить файл Эксель? Я пробую ADO вроде все нормально, даже в гриде отображается а при компиллировании пишет что файл либо занят, либо находится на сервере, либо стоит только для чтения, хотя файл лежит локально и никаих ограничений нет.
Пробовал через ConnectionString ADOTable напрямую прописать пишет что Источник данных не найден и не указан драйвер, исполуемый по умолчанию

Автор: ama_kid 5.5.2008, 16:40
Тиль, чем OLE не устраивает?
Код

var
  FileExcel:string;
  Wbk,WS: OleVariant;
  Excel:Variant;
...
 // Инициализация и открытие файла
  FileExcel:='Полный путь к файлу Excel.xls';
  try
    Excel := GetActiveOleObject('Excel.Application');
  except
    Excel := CreateOleObject('Excel.Application');
  end;
  WBk:=Excel.WorkBooks.Open(FileExcel);
  WS:=WBk.Worksheets.Item['Лист1'];
 // Доступ к ячейкам:
  WS.Cells.Item[i,j].Text := 'Ячейка...'
 // Выход
 Ws:=Unassigned;
 Wbk:=Unassigned;
 Excel.Save;
 Excel.Quit;
 Excel:=Unassigned;
Писал навскидку, по памяти, но принцип должен быть понятен...

Автор: Тиль 5.5.2008, 16:44
надо в гриду вывести..мне потом еще запросы писать надо будет с группировками с суммированием

Добавлено через 9 минут и 19 секунд
блин, разобрался..но все равно пишет что файл либо занят, либо находится на сервере, либо стоит только для чтения, хотя файл лежит локально и никаих ограничений нет.

Автор: Savek 5.5.2008, 17:01
Ado требует монопольный доступ к файлу

Автор: Тиль 5.5.2008, 17:04
так он и так монопольный...ка же еще..он у меня не открыт нигде, лежит локально..что еще может быть?

Автор: Rodman 5.5.2008, 17:14
а если через OLEVariant?

тебе же надо данные достать?

Автор: Тиль 5.5.2008, 17:23
а потом выборку с группировкой как я буду делать? там же еще и суммировать цифры надо в соответствии с гурппировкой

Автор: Akella 5.5.2008, 18:19
Тиль, тебе в эту ветку http://forum.vingrad.ru/forum/delphi-activex-com-corba-ole.html

Автор: Albinos_x 5.5.2008, 18:42
http://forum.vingrad.ru/forum/topic-84634.html

Автор: YurikGL 8.5.2008, 20:22
Читать, а тем более изменять файл Excel через ADO  считаю извращением.....

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)