Показать сообщение отдельно
  #1  
Старый 28.11.2013, 06:51
denISRU denISRU вне форума
Прохожий
 
Регистрация: 24.03.2009
Сообщения: 25
Репутация: 10
По умолчанию пересохранение DBF в XLS

Уважаемые, такая задача.. - есть папка в которой появляются файлы DBF их нужно пересохранить в XLS для дальнейших действий. Я поковырявшись в остатках своих знаний наваял код который открывает файл в Экселе, и сохраняет его в нужном формате, вот он
Код:
procedure TForm1.Button1Click(Sender: TObject);
   dir:= 'C:\temp\';
  begin
  ExcelApp:=CreateOleObject('Excel.Application');
  WorkBook:=ExcelApp.Workbooks.Open(dir+'F20'+'.DBF');
  WorkBook.SaveAs(dir+'F20'+'.xls', -4143);//-4143=xlNormal (FileFormat)
  WorkBook.Close;
 end;
Помогите допилить его чтобы он все файлы в папке последовательно сохранял, гуглил, смотрел - пишут про FidnFisrt FindNext, но я просто не понимаю как их присобачить к моему "творению"...


--------------------------------
допилил вот так
Код:
procedure TForm1.Button1Click(Sender: TObject);
var dir: string;
     ExcelApp,
  WorkBook: variant;
  SR:TSearchRec;
  FindRes:Integer;

   begin
   dir:= 'C:\temp\'  ;

if FindFirst(Dir+'F*',faAnyFile,SR) = 0 then
begin
repeat
  ExcelApp:=CreateOleObject('Excel.Application');
  WorkBook:=ExcelApp.Workbooks.Open(dir+SR.Name);
  WorkBook.SaveAs(dir+SR.Name+'.xls', -4143);//-4143=xlNormal (FileFormat)
  WorkBook.Close;

 until findnext(SR)<>0  ;
 end;
  FindClose (SR);
 end;

end.
Вроде работает... - так что Уважаемые, проверьте на ...эм... недостатки? - ну мало ли..упустил что то..
Ответить с цитированием