Главная страница
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.058 c
4-1153388040
Nikos2006
2006-07-20 13:34
2006.12.03
замена рабочего стола


2-1163087508
любитель
2006-11-09 18:51
2006.12.03
Удалении директории при удалении записи


4-1153409355
tria
2006-07-20 19:29
2006.12.03
Проблема со считыванием данных из com- порта.


15-1163456184
константинов
2006-11-14 01:16
2006.12.03
Флэшки. USB port


15-1163071039
SpellCaster
2006-11-09 14:17
2006.12.03
Посоветуйте DVD-RW