Delphi与Word(一)合并Word 表格中单元格

王朝delphi·作者佚名  2006-01-08
宽屏版  字体: |||超大  

//合并Word 表格中单元格

procedure mergeWordCell;

var WordApp: TWordApplication;

WordDoc: TWordDocument;

DocInx,oFileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,

PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat: OleVariant;

i,iRow,iCol:integer;

myCell:Cell;

myRow:Row;

begin

memo1.Lines.Clear ;

// ===== 创建对象 =====

if not Assigned(WordApp) then

begin

WordApp:= TWordApplication.Create(nil);

WordApp.Visible := false;

end;

if not Assigned(WordDoc) then

WordDoc:= TWordDocument.Create(nil);

try

DocInx:=1;

oFileName := 'd:\test.doc';

oReadOnly:=true;

CfCversions := EmptyParam;

AddToRctFiles:= EmptyParam;

PswDocument:= EmptyParam;

PswTemplate:= EmptyParam;

oRevert:= EmptyParam;

WPswDocument:= EmptyParam;

WPswTemplate:= EmptyParam;

oFormat:= EmptyParam;

// ===== 打开文件 =====

WordApp.Documents.open(oFileName,CfCversions,oReadOnly,AddToRctFiles,

PswDocument,PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);

// ===== 关联文件 =====

WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));

//合并第一、二列

iStart:=WordDoc.Tables.Item(i).Cell(1,1).Range.Start;

myCol:= WordDoc.Tables.Item(i).Columns.Item(2);

iEnd:=myCol.Cells.Item(myCol.Cells.Count).Range.End_;

myRange:=WordDoc.Range;

myRange.Start:=iStart;

myRange.End_ :=iEnd;

myRange.Cells.Merge;

finally

if Assigned(WordDoc) then // ===== 关闭文件 =====

begin

WordDoc.Close;

WordDoc.Disconnect;

WordDoc.Destroy;

WordDoc := nil;

end;

if Assigned(WordApp) then // ===== 关闭Word =====

begin

WordApp.Quit;

WordApp.Disconnect;

WordApp.Destroy;

WordApp := nil;

end;

end;

end;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有