VBA之Word应用第五章第三节 Range对象的属性(二)
《VBA之Word应用》(版权10178982),是我推出第八套教程,教程是专门讲解VBA在Word中的应用,围绕“面向对象编程”讲解,首先让大家认识Word中VBA的对象,以及对象的属性、方法,然后通过实例让大家感受到Word VBA 的妙处。
这套教程是专门针对WORD VBA 的教程,是VBA中的稀缺资源,我给这套教程分归为中级教程,希望大家在VBA入门后再学习这套教程,这样会更加深入的理解面向对象编程的意义。
本套教程共三册十六章,今日内容为VBA之Word应用第五章第三节Range对象的属性(二)

【分享成果,随喜正能量】人这一生,好不好都得自己走,累不累都得自己承受。每个人都有难言之苦,每个人都有无声的泪,岁月可曾放过谁?再风光的人,背后都有寒凉凄楚,再幸福的人,内心也有无奈难处,没人扶的时候,自己要站直,没人帮的时候,自己要努力。苦尽,甘自来;春暖,花会开。
第五章第三节Range对象的属性(二)
大家好,我们这讲继续Range属性的讲解。在上一节中,我们讲了如何利用Range属性加粗某个段落,及如何在当前活动文档中插入表格及向表格中添加内容的方案,这讲我们继续向下讲解。
1Range.Characters 属性
这个属性返回一个表示区域中的字符的字符集合。
语法:expression.Characters
其中:expression 为一个表示 Range 对象的变量
2Range.Columns 属性
这个属性返回一个Columns集合, 该集合代表区域中的所有表格列。
语法:expression.Columns
其中:expression 为一个表示 Range 对象的变量
3Range.Rows 属性
返回一个Rows集合, 该集合代表区域中的所有表格行。
语法:expression.Rows
其中:expression 为一个表示 Range 对象的变量
4实例:显示字符数及表格的添加
下面我们仍是就一个实例来讲解本节的一些属性,大家要注意Word VBA和Excel VBA在学习的时候要注重应用程序的利用,要仔细代码的写法,不可凭空臆断。这讲的代码中首先要给用户当前文档第一段的字符数,然后在文档的最后插入一个表格,并在表格中填入一些数值。
我们看下面的代码。
Sub mynzB()
MsgBox“当前文档第一段的字符数为: ” & ActiveDocument.Paragraphs(1).Range.Characters.Count
ActiveDocument.Paragraphs.Add
SetmyTable = ActiveDocument.Tables.Add(Range:=ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range, _
NumRows:=3,NumColumns:=4, DefaultTableBehavior:=wdWord9TableBehavior)
IfActiveDocument.Tables.Count >= 1 Then
MsgBox“列数:” & ActiveDocument.Tables(1).Columns.Count & ” 行数:” & ActiveDocument.Tables(1).Rows.Count
EndIf
WithActiveDocument.Tables(1)
ForI = 1 To .Columns.Count
ForT = 1 To .Rows.Count
.Cell(T,I).Range.Text = I + T
Next
Next
EndWith
End Sub
代码截图:

代码解读:
1)MsgBox “当前文档第一段的字符数为: ” & ActiveDocument.Paragraphs(1).Range.Characters.Count这段代码将弹出当前活动文档第一段的字符数
2)ActiveDocument.Paragraphs.Add这句代码是添加一个段落
3)Set myTable = ActiveDocument.Tables.Add(Range:=ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range, _
NumRows:=3,NumColumns:=4, DefaultTableBehavior:=wdWord9TableBehavior)
以上代码是在最后的段落中添加一个表格
4)IfActiveDocument.Tables.Count >= 1 Then
MsgBox“列数:” & ActiveDocument.Tables(1).Columns.Count & ” 行数:” & ActiveDocument.Tables(1).Rows.Count
EndIf
以上代码是给出所添加表格的行数和列数
5)WithActiveDocument.Tables(1)
ForI = 1 To .Columns.Count
ForT = 1 To .Rows.Count
.Cell(T,I).Range.Text = I + T
Next
Next
End With
以上代码是向表格中添加一些数值。
我们最后来看代码的运行:
提示字符数:

提示行列数:

添加的表格:

今日内容回向:
1Word中Range对象的Characters属性、Columns 属性、Rows属性的意义是什么?
2Word中插入表格后,如何显示表格的行数、列数,并在表格中填入数值?
3在显示第一段的字符数时和字数有何不同?
本讲内容参考程序文件:Doc 005文档.docm
我20多年的VBA实践经验,全部浓缩在下面的各个教程及应用工具中:




夜雨聆风