预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共70页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

循环在WORDVBA中的应用 [001]在活动文档的开头插入一张4列3行的表格。ForEach...Next结构用于循环遍历表格中的每个单元格。在ForEach...Next结构中,InsertAfter方法用于将文字添至表格单元格(单元格1、单元格2、以此类推)。 SubCreateNewTable() DimdocActiveAsDocument DimtblNewAsTable DimcelTableAsCell DimintCountAsInteger SetdocActive=ActiveDocument SettblNew=docActive.Tables.Add(_ Range:=docActive.Range(Start:=0,End:=0),NumRows:=3,_ NumColumns:=4) intCount=1 celTable.Range.InsertAfter"Cell"&intCount intCount=intCount+1 NextcelTable tblNew.AutoFormatFormat:=wdTableFormatColorful2,_ ApplyBorders:=True,ApplyFont:=True,ApplyColor:=True EndSub [002]在活动文档中第一张表格的第一个单元格中插入文字。Cell方法返回单独的Cell对象。Range属性返回一个Range对象。Delete方法用于删除现有的文字,而InsertAfter方法用于插入文字“Cell1,1”。 SubInsertTextInCell() IfActiveDocument.Tables.Count>=1Then WithActiveDocument.Tables(1).Cell(Row:=1,Column:=1).Range .Delete .InsertAfterText:="Cell1,1" EndWith EndIf EndSub [003]返回并显示文档中第一张表格的第一行中每个单元格的内容。 SubReturnTableText() DimtblOneAsTable DimcelTableAsCell DimrngTableAsRange SettblOne=ActiveDocument.Tables(1) ForEachcelTableIntblOne.Rows(1).Cells SetrngTable=ActiveDocument.Range(Start:=celTable.Range.Start,_ End:=celTable.Range.End-1) MsgBoxrngTable.Text NextcelTable EndSub SubReturnCellText() DimtblOneAsTable DimcelTableAsCell DimrngTableAsRange SettblOne=ActiveDocument.Tables(1) ForEachcelTableIntblOne.Rows(1).Cells SetrngTable=celTable.Range rngTable.MoveEndUnit:=wdCharacter,Count:=-1 MsgBoxrngTable.Text NextcelTable EndSub [004]在活动文档的开头插入用制表符分隔的文本,然后将这些文本转换为表格。 SubConvertExistingText() .InsertBefore"one"&vbTab&"two"&vbTab&"three"&vbCr .ConvertToTableSeparator:=Chr(9),NumRows:=1,NumColumns:=3 EndWith EndSub [005]定义一个数组,该数组的元素个数等于文档中第一张表格(假定为OptionBase1)中的单元格数。ForEach...Next结构用于返回每个表格单元格的内容,并将文字指定给相应的数组元素。 SubReturnCellContentsToArray() DimintCellsAsInteger DimcelTableAsCell DimstrCells()AsString DimintCountAsInteger DimrngTextAsRange IfActiveDocument.Tables.Count>=1Then WithActiveDocument.Tables(1).Range intCells=.Cells.Count ReDimstrCells(intCells) intCount=1 ForEachcelTableIn.Cells SetrngText=c