我写的代码调用Word模板,然后填充数据,但是每次调用的居然是模板文件而不是由魔板生成的新的文档,这个很苦恼.代码如下请大家帮忙
var
    myExcel: Variant;
    workBook: olevariant;
    workSheet: olevariant;
    j:integer;
beginif MessageBox(self.Handle, '您确定将工艺数据导出到Excel中吗?', pchar(frmMain.strDlg), MB_YESNO OR MB_ICONWARNING) = IDNO THEN EXIT;  try   myExcel := CreateOleObject('Excel.Application');
   myExcel.WorkBooks.Open(ExtractFilePath(application.ExeName) + 'Sonic.xlt' ); //寻找应用程序目录下的导出模板   //myExcel.Caption := cmbType.Text;
   myExcel.Application.Visible := true;   workBook := myExcel.Application.workBooks[1];
   workSheet := workBook.Worksheets.Item[1];
end;

解决方案 »

  1.   

    抱歉上面的代码是由Excel模板生成的文档,这个没有问题,用下面的代码却生成不了Word的文档,大家帮帮我.var
    MSWord: Variant;
    docWord : olevariant;begin
    if MessageBox(self.Handle, '您确定将工艺数据导出到Word中吗?', pchar(frmMain.strDlg), MB_YESNO OR MB_ICONWARNING) = IDNO THEN EXIT;  try
       MSWord:= CreateOLEObject('Word.Application');
       docWord := MSWord.Documents.Open( ExtractFilePath(application.ExeName) + 'HJ.dot' );   MSWord.Visible := true;  except
        MessageBox(self.Handle, '未能建立 WORD !' + #13#10 + '请检查是否已经安装了WORD。', pchar(frmMain.strDlg), MB_OK OR MB_ICONWARNING);
        Abort;
        exit;
      end;
      

  2.   

    哦,已经搞定了,刚才看到了一个人的帖子
    将那句调用HJ.dot的代码改成既可
      docWord := MSWord.Documents.Add( ExtractFilePath(application.ExeName) + 'HJ.dot',false );
      

  3.   

    对于非模板可以用OPEN,对于用模板生成其它文件是add,lz已经知道了.
      

  4.   

    刚才查到资料是Add
    想不到楼主搞定了