一个很急的Word问题,请帮助!(100分)

  • 主题发起人 主题发起人 oldbow
  • 开始时间 开始时间
O

oldbow

Unregistered / Unconfirmed
GUEST, unregistred user!
我的需求是这样的:
根据记录生成Word文件,每页都有一个标题及表格。
问题:
现在写入标题,插入一个表格都可以,但在插入一个表格后再想插入分页符开始新的页。现在我的问题是当插入一个表格后怎么把插入点移动到表格下面,可以插入分页符合新的内容?
谢谢!
 
下面一段代码,你看能不能用上.

procedure TfrmBug.tbToWordClick(Sender: TObject);
var
word ,t : OleVariant;
i:integer;
begin
word := CreateOleObject('Word.Application');
word.Visible := True;
Word.Activate;
Word.documents.Add;

with dbgt_plan.DataSource.DataSet do
begin
first;
i :=1;
while not eof do
begin
t := Word.ActiveDocument.Tables.Add(Word.Selection.Range, 5, 4);

t.Select;
Word.Selection.Cells.Borders.Item($FFFFFFFF).LineStyle := 1;
Word.Selection.Cells.Borders.Item($FFFFFFFE).LineStyle := 1;
Word.Selection.Cells.Borders.Item($FFFFFFFD).LineStyle := 1;
Word.Selection.Cells.Borders.Item($FFFFFFFC).LineStyle := 1;
Word.Selection.Cells.Borders.Item($FFFFFFFB).LineStyle := 1;
Word.Selection.Cells.Borders.Item($FFFFFFFA).LineStyle := 1;

//Tables.Item(1)代表文档中的第一个表格,并将此行合成一行.
t := Word.ActiveDocument.Tables.Item(i);
t.Rows.Item(1).Select;
Word.Selection.Cells.Merge;
// Word.Selection.Cells.Borders.Item($FFFFFFFF).LineStyle := 0;
// Word.Selection.Cells.Borders.Item($FFFFFFFE).LineStyle := 0;
// Word.Selection.Cells.Borders.Item($FFFFFFFC).LineStyle := 0;

t := Word.ActiveDocument.Tables.Item(i);
t.Rows.Item(3).Select;
Word.Selection.Cells.Merge;
//Word.Selection.Cells.Borders.Item($FFFFFFFF).LineStyle := 0;
//Word.Selection.Cells.Borders.Item($FFFFFFFE).LineStyle := 0;
//Word.Selection.Cells.Borders.Item($FFFFFFFC).LineStyle := 0;
t.Cell(1,1).Range.InsertAfter('软件故障通知单');
t.Cell(2,1).Range.InsertAfter('姓名');
t.Cell(2,3).Range.InsertAfter('小组');
t.Cell(3,1).Range.InsertAfter('你 年 月 日提交的版本,存在以下缺陷,希望不断改进;');
t.Cell(4,1).Range.InsertAfter('序号');
t.Cell(4,2).Range.InsertAfter('故障现象/说明');
t.Cell(4,3).Range.InsertAfter('严重程度');
t.Cell(4,4).Range.InsertAfter('问题难度');

t.Cell(2,2).Range.InsertAfter(dbgt_plan.Columns[4].Field.AsString);
t.Cell(5,1).Range.InsertAfter('1');
t.Cell(5,2).Range.InsertAfter(dbgt_plan.Columns[12].Field.AsString);
t.Cell(5,3).Range.InsertAfter(dbgt_plan.Columns[8].Field.AsString);
t.Cell(5,4).Range.InsertAfter(dbgt_plan.Columns[7].Field.AsString);
//下面这行是插入一个回车键
Word.ActiveDocument.Range.InsertAfter(Text:=#10#13);
//下面两行是跳出表格.
Word.ActiveDocument.tables.item(i).Cell(5,4).range.select;
Word.Application.Selection.MoveDown(5, 4);

Next;
Inc(i);
end;
end;
end;
 
插入表格后
MyWord.EndOfDocument; //将插入点移动到文档结尾
 
后退
顶部