Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.188.254.179] |
|
Сообщ.
#1
,
|
|
|
есть исходный код (простой как трусы по рубль-двадцать):
procedure TfrmXLSOLEMain.Navigate(Sender: TObject; Name: string); // навигацЫя по каталогу(ам) var lFileName : TFileName; lNewName : TFileName; xls : Variant; wb : Variant; I, N : Integer; sName : string; function ExtractFileNameOnly(var AName: TFileName): string; var lExt : string; begin Result := ExtractFileName(AName); lExt := ExtractFileExt(Result); if lExt <> '' then Delete(Result, Pos(lExt, Result), Length(lExt)); end; begin lFileName := FShell.FileName; if not FileExists(lFileName) then Exit; if AnsiUpperCase(ExtractFileExt(lFileName)) <> '.XLS' then Exit; xls := CreateOleObject('Excel.Application'); xls.WorkBooks.Open(lFileName); wb := xls.ActiveWorkBook; N := wb.Worksheets.Count; for I := 1 to N do begin wb.Sheets[I].Activate; sName := wb.Sheets[I].Name; lNewName := AnsiLowerCase(Format('%s%s_%s.txt', [ExtractFilePath(lFileName), ExtractFileNameOnly(lFileName), sName])); wb.SaveAs(FileName := lNewName, FileFormat := xlTextWindows); end; xls.EnableEvents := false; wb.Save; wb.Close; xls.Quit; end; сохраненение происходит в сроке wb.SaveAs(FileName := lNewName, FileFormat := xlTextWindows); перед выполнением строки wb.Close; Ёксель во всю глотку орет : +-----------------------------------------------------+ | "сохранить изменения в файле <filename.txt> ?" | +-----------------------------------------------------+ Суть траблы: файл УЖЕ сохранен, а Ёксель пытается его еще раз сохранить и при этом выводит вышеприведенную мессагу Кто знает как это можно обойти? заранее благодарен |
Сообщ.
#2
,
|
|
|
xls.DisplayAlerts := false;
|