用Delphi合并Word表格中单元格.pdf
用Delphi合并Word表格中单元格
]//合并Word表格中单元格
proceduremergeWordCell;
varWordApp: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;
//=====创建对象=====
inotAssigned(WordApp)then
begin
WordApp:=TWordApplication.Create(nil);
WordApp.Visible:=false;
end;
inotAssigned(WordDoc)then
WordDoc:=TWordDocument.Create(nil);
try
DocInx:=1;
oFileName:=d:est.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
ifAssigned(WordDoc)then//=====关闭文件=====
begin
WordDoc.Close;
WordDoc.Disconnect;
WordDoc.Destroy;
WordDoc:=nil;
end;
ifAssigned(WordApp)then//=====关闭Word=====
begin
WordApp.Quit;
WordApp.Disconnect;
WordApp.Destroy;
WordApp:=nil;
end;
end;
end;
取得Word表格中的数据
//取得Word表格中的数据
proceduregetWordCellStr;
varWordApp:TWordApplication;
WordDoc:TWordDocument;
DocI