Здравствуйте уважаемые.
Проблема такая...
Создаю книгу exel (экспорт из БД) , далее сохраняю с заданным именем ..
Код:
const
Fnn= 'Test';
XLApp.WorkBooks[1].SaveAs(ExtractFilePath(Application.ExeName)+Fnn);
в нужный момент открываю книгу на другой форме в oleconteiner..
OleContainer1.CreateObjectFromFile(ExtractFilePath(Application.ExeName)+Fnn,False);
OleContainer1.DoVerb(ovShow);
затем при закрытии формы удаляю созданный файл ..
procedure TForm23.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
If FileExists(ExtractFilePath(ParamStr(0))+'Test.xlsx') Then Begin
DeleteFile('Test.xlsx');
OleContainer1.Close;
OleContainer1.DestroyObject;
end;
end;
все прекрасно работает что и требовалось.
Но иногда нужно сохранить книгу с другим именем делаю так..
procedure TForm23.N3Click(Sender: TObject);
begin
if SaveDialog1.Execute then begin
OleContainer1.OleObject.SaveAs(SaveDialog1.FileName);
ShowMessage('Отчет сохранён в файл:'#10+SaveDialog1.FileName+'xlsx');
end;
end;
Админ: Пользуемся тегами при оформлении кода!
тоже все нормально сохраняет.
Но теперь код при закрытии формы FormCloseQuery не удаляет первоначально созданный файл Test.xlsx, в чем проблема?
Буду благодарен за потраченое на меня время.