乐于分享
好东西不私藏

VBA之Word应用第五章第三节 Range对象的属性(二)

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实践经验,全部浓缩在下面的各个教程及应用工具中: