Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.03.2012, 14:20   #1
brick08
Пользователь
 
Аватар для brick08
 
Регистрация: 29.11.2011
Сообщений: 12
По умолчанию Закрыть уже открытый Excel

ДД!
пишу программу, которая делает расчеты и выгружает данные в Excel. И при формировании нового отчета нужно закрыть уже открытую пользователем книгу, чтобы перезаписать данные, но как это сделать не могу понять. Пишу так:
Код:
procedure CheckFileOpen(NameFile:string);
var i:integer;
s:string;
begin
  try
    for i:=1 to MyExcel.WorkBooks.Count do
    s:=MyExcel.WorkBooks.Item[i].FullName;
    if (NameFile=s) then
      MyExcel.WorkBooks.Item[i].close;
  except
    MessageBox(0,'Îøèáêà çàêðûòèÿ ôàéëà','Îøèáêà',MB_OK+MB_ICONERROR);
  end;
end;
procedure TForm1.Button175Click(Sender: TObject);
   var    
   FileName:string;
   begin
  MyExcel := CreateOleObject(ExcelApp);
  MyExcel.Visible :=false;
  WBk := MyExcel.WorkBooks.Open(strOtchet);
  Sheet := WBk.WorkSheets[ExtractFileName('Отчет')].Select;
 ....
MyExcel.DisplayAlerts:= false;
 WBk.Save;
 FileName:=GetSpecialPath(CSIDL_DESKTOPDIRECTORY)+'\Отчет1.xls';
 CheckFileOpen(FileName);
 Wbk.Activate;
 MyExcel.activeworkbook.SaveAs(FileName);
 MyExcel.quit;
 MyExcel:=Unassigned;
 end;
Но при поиске в CheckFileOpen перебирает только открытые программой книги, а открытые пользователем пропускает. как сделать чтобы закрыть уже открытый файл Excel?
brick08 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
CreateObject("Excel.Application"), процесс Excel продолжает висеть в диспетчере, когда это уже не нужно Vceznayka Microsoft Office Excel 5 29.12.2011 13:40
Excel не могу закрыть ссесию! ZasZas13 Microsoft Office Excel 3 27.12.2011 08:18
Excel не могу закрыть ссесию! ZasZas13 Помощь студентам 0 27.12.2011 01:43
активировать уже открытое приложение (одно из окон) по части названия и его корректно закрыть Yuri_K Microsoft Office Excel 1 25.11.2009 23:47
активировать уже открытое приложение (одно из окон) по части названия и его корректно закрыть Yuri_K JavaScript, Ajax 0 25.11.2009 22:26