Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.03;
Скачать: CL | DM;

Вниз

Проблемы с Excell в D7 срочно   Найти похожие ветки 

 
Varf   (2006-10-19 11:33) [0]

Помогите плз!!!
проблема такая:
нужно из excell файла дернуть некуюинфу и закрыть!!(возможно из нескольких файлов)
создаю excell application через вкладку servers (в таком виде):
    ExcelApplication1:= TExcelApplication.Create(self);
  ExcelApplication1.Connect;
  exactive:=true;
  for iFileID := 0 to iNumFiles - 1 do begin
//    filename:= OpenDialogInFile.Files.Strings[iFileID];
   WorkBook:=ExcelApplication1.Workbooks.Open(filename[iFileID], EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,Emp tyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,lcid);
   Worksheet:=Workbook.Worksheets.Item["Лист1"] as _Worksheet;

все работает замечательно!!!
но если подцепленно несколько файлов закрываться не хочет!!!
закрывает только 1 экземпляр excell а остальные остаются(закрываю так):
for iFileID :=0  to iNumFiles-1 do begin
     WorkBook.Close(EmptyParam,filenameiFileID],EmptyParam,lcid);
   end;
   ExcelApplication1.Disconnect;
   ExcelApplication1.Destroy;

выдает:Project .... raised exception class EOleException with message : Вызванный объект был отключен от клиентов!


 
Dmitrij_K   (2006-10-19 11:41) [1]

while WorkBook.Count<>0 do WorkBook.Close(0);


 
Varf   (2006-10-19 11:47) [2]


> Dmitrij_K   (19.10.06 11:41) [1]
> while WorkBook.Count<>0 do WorkBook.Close(0);


спасибо конечно... но Count - undeclared!!!
если это стандартное то наверно что то забыл в Uses закинуть??? а что???


 
Dmitrij_K   (2006-10-19 11:52) [3]

А ты не думал что
for iFileID :=0  to iNumFiles-1 do begin
    WorkBook.Close(EmptyParam,filenameiFileID],EmptyParam,lcid);
  end;

при закрытии одного остается открытыми на 1 меньше?
если их всего было 2 то после закрытия 1-го, 2-ой становится 1-ым и его закрывать надо как 1-ый


 
umbra ©   (2006-10-19 12:07) [4]

а чего это Вы пытаетесь одну и туже книгу закрыть несколько раз?


 
EvS ©   (2006-10-19 12:28) [5]

for i:=ExcelApplication1.Workbooks.Count-1 downto 0 do ExcelApplication1.Workbooks[i].Close(0);


 
Varf   (2006-10-19 13:41) [6]


> Dmitrij_K

Смысл уловил но как реализовать че то не пойму!!


 
Varf   (2006-10-19 13:46) [7]


> EvS

и ваш вариант что то же ни к чему хорошему не привел!!!


 
Varf   (2006-10-19 13:53) [8]

Все разобрался!!! все оказалось как всегда просто!!!
извиняюсь!!! Спасибо!!!!



Страницы: 1 вся ветка

Текущий архив: 2006.12.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.038 c
1-1161192067
i-am-vladko
2006-10-18 21:21
2006.12.03
TWebBrowser dynamic create


15-1163507570
Юрий Зотов
2006-11-14 15:32
2006.12.03
Прошу помочь :о)


15-1163707107
oxffff
2006-11-16 22:58
2006.12.03
Какое будущее у языка Object Pascal?


2-1163673385
iamdanil
2006-11-16 13:36
2006.12.03
Сделать папку общей


3-1159717928
bugorik
2006-10-01 19:52
2006.12.03
Как поместить результат SQL запроса в Combobox ?