Delphi通过OLE对word进行单元格合并操作

本文介绍如何使用Delphi编写程序来创建Word文档,并设置页面布局、字体样式、段落格式及插入表格等内容。

 

 

uses comobj, word2000
procedure TForm1.Button2Click(Sender: TObject);
var
WordApp, WordDoc,table: OleVariant;
fileName : string;
begin
WordApp := CreateOleObject('Word.Application');
WordDoc := WordApp.Documents.Add;

try
WordDoc.PageSetup.LeftMargin := 0.39*72; // 1 英寸 = 72 磅
WordDoc.PageSetup.RightMargin := 0.39*72; // 1 英寸 = 72 磅
WordDoc.PageSetup.TopMargin := 1*72; // 1 英寸 = 72 磅
WordDoc.PageSetup.BottomMargin := 1*72; // 1 英寸 = 72 磅
WordDoc.PageSetup.PaperSize := wdPaperA4; //A4纸

WordApp.Selection.Font.Name := '黑体';
WordApp.Selection.Font.Size := 22;//二号字体 单位:磅
WordApp.Selection.Font.Bold := True;//字体加粗
WordApp.Selection.Font.Color := wdColorBlue;//字体颜色
WordApp.Selection.ParagraphFormat.Alignment := wdAlignParagraphCenter; //段落中文本居中
WordApp.Selection.ParagraphFormat.LineSpacingRule := wdLineSpaceSingle;//单倍行距
WordApp.Selection.TypeText('学生对教师教学工作总体评价');
WordApp.Selection.TypeParagraph;//回车
WordApp.Selection.TypeParagraph;//回车


table := WordApp.ActiveDocument.Tables.Add(WordApp.ActiveDocument.Paragraphs.item(3).Range,2,5); //往第三段增加一表格(2行5列)

WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Size := 9;
WordApp.Selection.Font.Bold := False;
WordApp.Selection.Font.Color := wdColorBlack;
table.cell(1,1).VerticalAlignment := wdCellAlignVerticalCenter;
WordApp.Selection.TypeText('教师姓名');

table.Cell(1, 1).Merge(table.Cell(2, 1));

table.Cell(1, 2).Merge(table.Cell(1, 5));

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlue;
WordApp.Selection.Font.Bold := True;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('对 教 师 教 学 工 作 的 综 合 评 价');
WordApp.Selection.TypeParagraph;
WordApp.Selection.MoveRight(wdCell,1);

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := True;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('A');
WordApp.Selection.TypeParagraph;
WordApp.Selection.Font.Size := 9;
WordApp.Selection.Font.Bold := False;
WordApp.Selection.TypeText('非常满意');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := True;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('B');
WordApp.Selection.TypeParagraph;
WordApp.Selection.Font.Size := 9;
WordApp.Selection.Font.Bold := False;
WordApp.Selection.TypeText('满意');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := True;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('C');
WordApp.Selection.TypeParagraph;
WordApp.Selection.Font.Size := 9;
WordApp.Selection.Font.Bold := False;
WordApp.Selection.TypeText('基本满意');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := True;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('D');
WordApp.Selection.TypeParagraph;
WordApp.Selection.Font.Size := 9;
WordApp.Selection.Font.Bold := False;
WordApp.Selection.TypeText('不满意');

WordApp.Selection.MoveRight(wdCell,1);//新增一行
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := false;
WordApp.Selection.Font.Size := 10.5;
WordApp.Selection.TypeText('教师A');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := true;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('94');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.TypeText('6');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.TypeText('0');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.TypeText('0');


WordApp.Selection.MoveRight(wdCell,1);//新增一行
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := false;
WordApp.Selection.Font.Size := 10.5;
WordApp.Selection.TypeText('教师B');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.Font.Name := '宋体';
WordApp.Selection.Font.Color := wdColorBlack;
WordApp.Selection.Font.Bold := true;
WordApp.Selection.Font.Size := 12;
WordApp.Selection.TypeText('92');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.TypeText('8');

WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.TypeText('0');
WordApp.Selection.MoveRight(wdCell,1);
WordApp.Selection.TypeText('0');


table.Rows.Alignment := wdAlignRowCenter;//表格居中
table.Borders.Item(wdBorderLeft).LineStyle:=wdLineStyleSingle;
table.Borders.Item(wdBorderRight).LineStyle:=wdLineStyleSingle;
table.Borders.Item(wdBorderTop).LineStyle:=wdLineStyleSingle;
table.Borders.Item(wdBorderBottom).LineStyle:=wdLineStyleSingle;
table.Borders.Item(wdBorderHorizontal).LineStyle:=wdLineStyleSingle;
table.Borders.Item(wdBorderVertical).LineStyle:=wdLineStyleSingle;

fileName := ExtractFilePath(ParamStr(0)) + '总体总评.doc';
WordDoc.saveas(fileName);
finally
WordDoc.Saved := True;
WordDoc.Close;
WordApp.Quit;
end;
ShowMessage('ok');

end;

转载于:https://www.cnblogs.com/jcomet/p/7561272.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值