利用OFFICE自身的特性可实现ACCESS另存为功能转换为WORD与EXCEL

解决方案 »

  1.   

    //簡化的代碼給你看看,應該沒有問題
    procedure TForm1.prcSaveToDoc(sFileName: string);
    var
      vWord,vDoc,vTmp: Variant;
      sTmp: string;
    begin
      screen.cursor:=crHourGlass;
      try
        vword:=CreateOLEObject('word.application');
      except
        screen.cursor:=crDefault;
        ShowMessage('Word OLE server not found');
        exit;
      end;  vDoc:=vword.Documents.Add;
      vDoc.Paragraphs.Add;  sTmp := 'haha';
      vTmp:=vdoc.Paragraphs.item(1).Range;
      vTmp.InsertBefore(sTmp);
      vTmp.Bold := 1;
      vTmp.Font.Name := cedNo.Font.Name ;
      vTmp.Font.Size := cedNo.Font.Size ;
      vTmp.Font.ColorIndex := 15;
      vTmp.ParagraphFormat.Alignment:=wdAlignParagraphRight;
      if FileExists(SFileName) then
      begin
        FileSetAttr(sFileName, faArchive);
        DeleteFile(sFileName);
      end;
      VDoc.SaveAs(sFilename);
      vword.Quit;
      vword:=unassigned;  screen.cursor:=crDefault;
    end;
      

  2.   

    我这有个把dataset转换成excel的函数!把邮箱给我,给你发过去:
    我的[email protected]