首先在form上制作一个表格,运行实在表格中填入内容,然后把表格和填的内容一起插
入到已创建好了的word文档里.请教各位了!

解决方案 »

  1.   


    var WordDoc1, Range1,WordTable: variant;
      try
        Word := CreateOleObject('Word.Application');
        Word.Documents.Add();
        WordDoc1 := Word.ActiveDocument;
             WordDoc1.Paragraphs.Add();
             Range1 := WordDoc1.Paragraphs.Item(1).Range;
             WordDoc1.Tables.add(Range1,2,6);   //2行6列的表格
             WordTable:= WordDoc1.Tables.item(1);    //获得表格对象
             WordTable.cell(1,1).range.text:= '哈哈';
             ......
      except
        MessageBox(Handle,'word没安装' ,'提示 ',mb_ok);
        Exit;
      end;
      

  2.   

    楼上的朋友,你说得我云里雾里!对word操作,需要wordappliction,worddocument,wordfont这些控件,可是你,都是用一个word,worddoc,range,wordtable这样几个变量就搞定了,我是无论如何也实现不了。拜托朋友你给个具体详实的例子好吗?
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
    ItemIndex :OleVariant;
    FileName, ConfirmConversions, ReadOnly, AddToRecentFiles,
    PasswordDocument, PasswordTemplate, Revert,
    WritePasswordDocument, WritePasswordTemplate, Format, EnCoding, Visible: OleVariant;
    aRange: Range;
    Table1, Table2: Table;
    Cell1: Cell;
    begin
        try
            Wordapplication1.Connect;
        except
            MessageDlg('Word2000可能没有安装!', mtError, [mbOk], 0);        exit;
        end;    Wordapplication1.Visible := true;
        WordApplication1.Caption := name;    FileName := 'C:\test.doc';    ConfirmConversions:= False;
        ReadOnly:=False;
        AddToRecentFiles:=False;
        PasswordDocument:='';
        PasswordTemplate:='';
        Revert:=True;
        WritePasswordDocument:='';
        WritePasswordTemplate:='' ;
        Format:=wdOpenFormatDocument;
        Visible := true;
        Encoding := '';    WordApplication1.Documents.Open( FileName, ConfirmConversions,
         ReadOnly, AddToRecentFiles, PasswordDocument, PasswordTemplate,
         Revert, WritePasswordDocument, WritePasswordTemplate, Format, Encoding, Visible);         {Assign WordDocument component}
        ItemIndex:= 1;
        WordDocument1.ConnectTo(WordApplication1.Documents.Item(ItemIndex));         {Turn Spell checking of because it takes a long time if enabled and slows down Winword}
        WordApplication1.Options.CheckSpellingAsYouType := False;
        WordApplication1.Options.CheckGrammarAsYouType := False;    aRange := WordDocument1.Range;
        WordDocument1.Tables.AddOld(aRange,10,10);    Table1 := WordDocument1.Tables.Item(1);    Cell1 := Table1.Cell(1,1);
        Cell1.Range.Text := '.....';//    aRange := WordDocument1.Paragraphs.Last.Range;//    WordDocument1.Tables.AddOld(aRange,10,8);
    end;
      

  4.   

    我用这个方法,只成功过一次,以后每次都是出现这样的错误:
    “被呼叫方拒绝接收呼叫”也就是word无法调用起来了,请问有没有用程序能够解决的方法