用户希望用word或者excel预定一个文本做为模板,程序中动态把产品报价的信息添加到word或者excel中,该怎么做?用户要求可以自定义模板

解决方案 »

  1.   

    var
      App,workbook,sheet:Variant;
      i:Integer;
      bOK:Boolean;
      count1,count2:integer;
      i1,i2:integer;
    begin
      Result:=False;
      try
        app:=createoleobject('excel.application');
        app.DisplayAlerts:=false;
        if FileExists(sFileName) then
          workbook:=app.workbooks.Open(sFileName)
        else
          workbook:=app.workbooks.Add;    bOK:=False;
        for i:=1 to workbook.workSheets.count do
        begin
          if workbook.workSheets[I].name=shtname then
          begin
            sheet:=workbook.workSheets[I];
            bOK:=True;
            break;
          end
        end;
        if not bOK then
        begin
          sheet:=workbook.worksheets.add;
          sheet.Name:=shtname;
        end;
        sheet.Select;//
            sheet.cells[i,j]:='向excel表格中添加值';
            sheet.rows[k].insert;//添加新行
    //
        Sheet.Cells.Select;
        Sheet.Cells[2,1].Select;    workbook.SaveAs(sFileName, xlNormal, '','',False,False);
        workbook.close(True);
        Result:=True;
      except
        workbook.Close(False);
      end;
      app.quit;
      

  2.   

    在Excel中应该好控制一些,因为可能用行,列控制插入位置,Word中要在任意位置插入比较麻烦。不可以先根据一些动态的数据(自定义的内容)和模板在后台生成Word文档,然后用word打开就行
      

  3.   

    还有,你可以将word或者excel的东东save as tohtml,而后对table等东西操作就是了,很方便的:)
      

  4.   

    而且速度很快,不像创建一个application是很慢