Delphi操作Word的几个知识点
//-------------------初始化--------------------
var
wApp,work:Variant;
try
wApp:=GetActiveOleObject('word.Application');
except
wApp:=CreateOleObject('word.Application');
end;
//---------------替换字符--------------------
wApp.selection.find.text:='<%a2%>';
wApp.selection.find.replacement.text:=lb;
wApp.selection.find.execute(replace:=wdReplaceAll);
//----------------------隐藏WORD菜单和工具栏----------------------
if OC.State in [osUIActive] then
begin
OC.OleObjectInterface.QueryInterface(IOleInPlaceObject,IOO);
IOO.UIDeactivate;
IOO :=nil;
end;
//-----------------根据书签导数据------
wApp.Selection.GoTo(What:=wdGoToBookmark,Name:='ZCZD'+IntToStr(i));
wApp.Selection.typetext('■')
//-------------------生成页眉页脚并写入数据----------
wApp.Selection.GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:='FLAG');
If wApp.ActiveWindow.View.SplitSpecial <> wdPaneNone Then
wApp.ActiveWindow.Panes(2).Close;
If (wApp.ActiveWindow.ActivePane.View.Type = wdNormalView) Or (wApp.ActiveWindow.ActivePane.View.Type = wdOutlineView) Then
wApp.ActiveWindow.ActivePane.View.Type := wdPrintView;
wApp.ActiveWindow.ActivePane.View.SeekView := wdSeekCurrentPageHeader;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderLeft).LineStyle := wdLineStyleNone;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderRight).LineStyle := wdLineStyleNone;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderTop).LineStyle := wdLineStyleNone;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderBottom).LineStyle := wdLineStyleNone;
wApp.ActiveWindow.ActivePane.View.SeekView := wdSeekCurrentPageFooter;
wApp.Selection.ParagraphFormat.Alignment := wdAlignParagraphRight;
if (DM.XM_DS.FieldByName('tg_flag').AsInteger = 2) and (DM.XM_DS.FieldByName('tj_flag').AsInteger = 0) then
wApp.Selection.TypeText(Text:='合`格`任`务`书')
else
wApp.Selection.TypeText(Text:='不合格任务书');
wApp.ActiveWindow.ActivePane.View.SeekView := wdSeekMainDocument;
var
wApp,work:Variant;
try
wApp:=GetActiveOleObject('word.Application');
except
wApp:=CreateOleObject('word.Application');
end;
//---------------替换字符--------------------
wApp.selection.find.text:='<%a2%>';
wApp.selection.find.replacement.text:=lb;
wApp.selection.find.execute(replace:=wdReplaceAll);
//----------------------隐藏WORD菜单和工具栏----------------------
if OC.State in [osUIActive] then
begin
OC.OleObjectInterface.QueryInterface(IOleInPlaceObject,IOO);
IOO.UIDeactivate;
IOO :=nil;
end;
//-----------------根据书签导数据------
wApp.Selection.GoTo(What:=wdGoToBookmark,Name:='ZCZD'+IntToStr(i));
wApp.Selection.typetext('■')
//-------------------生成页眉页脚并写入数据----------
wApp.Selection.GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:='FLAG');
If wApp.ActiveWindow.View.SplitSpecial <> wdPaneNone Then
wApp.ActiveWindow.Panes(2).Close;
If (wApp.ActiveWindow.ActivePane.View.Type = wdNormalView) Or (wApp.ActiveWindow.ActivePane.View.Type = wdOutlineView) Then
wApp.ActiveWindow.ActivePane.View.Type := wdPrintView;
wApp.ActiveWindow.ActivePane.View.SeekView := wdSeekCurrentPageHeader;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderLeft).LineStyle := wdLineStyleNone;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderRight).LineStyle := wdLineStyleNone;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderTop).LineStyle := wdLineStyleNone;
wApp.Selection.ParagraphFormat.Borders.item(wdBorderBottom).LineStyle := wdLineStyleNone;
wApp.ActiveWindow.ActivePane.View.SeekView := wdSeekCurrentPageFooter;
wApp.Selection.ParagraphFormat.Alignment := wdAlignParagraphRight;
if (DM.XM_DS.FieldByName('tg_flag').AsInteger = 2) and (DM.XM_DS.FieldByName('tj_flag').AsInteger = 0) then
wApp.Selection.TypeText(Text:='合`格`任`务`书')
else
wApp.Selection.TypeText(Text:='不合格任务书');
wApp.ActiveWindow.ActivePane.View.SeekView := wdSeekMainDocument;