乐于分享
好东西不私藏

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属性的最后一节,这章的Range对象是我们掌握Word VBA的重要内容,我们要特别的掌握。

1Range.Tables 属性

这个属性返回一个tables集合, 该集合代表指定区域中的所有表格。

语法:expression. Tables

其中expression 为一个表示 Range 对象的变量。

2Range.Underline 属性

返回或设置应用于一系列的下划线的类型。

语法:expression.Underline

其中expression 为一个表示 Range 对象的变量。

3Range.ShapeRange 属性

这个属性返回一个ShapeRange集合, 该集合代表指定区域中的所有Shape对象。

语法: expression.ShapeRange

其中expression 为一个表示 Range 对象的变量。

l图形范围可以包含绘图、图形、图片、OLE 对象、ActiveX 控件、文本对象和标注。

4实例:添加下划线、添加图表、添加图形颜色

下面我们举个实例,这个实例中将给当前活动文档的某个段落添加上下划线,并在当前文档中添加一个表格,在表格中添加文本,最后在当前文档中添加两个图形,并给图形添加颜色。下面我们看代码:

Sub mynzE()

‘将文档的第三段加上双下划线

ActiveDocument.Paragraphs(3).Range.Underline= wdUnderlineDouble

‘添加两个矩形,填充紫色

ActiveDocument.Shapes.AddShapemsoShapeRectangle, 50, 50, 100, 200

ActiveDocument.Shapes.AddShapemsoShapeRectangle, 150, 150, 100, 200

ActiveDocument.Content.ShapeRange.Fill.ForeColor.RGB= _

RGB(255,0, 255)

‘添加图表,图表的第一列填上数据

ActiveDocument.Paragraphs.Add

SetmyTable = ActiveDocument.Tables.Add(Range:=ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range, _

NumRows:=3,NumColumns:=3, DefaultTableBehavior:=wdWord9TableBehavior)

Num= 100

ForEach myCell In ActiveDocument.Tables(1).Columns(1).Cells

myCell.Range.Text= Num & ” VBA”

Num= Num + 1

Next

End Sub

代码截图:

代码解读:

1)’将文档的第三段加上双下划线

ActiveDocument.Paragraphs(3).Range.Underline = wdUnderlineDouble

以上代码将当前文档的第三个段落添加上双下划线,wdUnderlineDouble 是双下划线。

下面我们看一下WdUnderline的 枚举值:

wdUnderlineDash 7划线。

wdUnderlineDashHeavy23粗划线。

wdUnderlineDashLong39长划线。

wdUnderlineDashLongHeavy55长粗划线。

wdUnderlineDotDash9点划相间线。

wdUnderlineDotDashHeavy25粗点划相间线。

wdUnderlineDotDotDash10点-点-划线相间模式。

wdUnderlineDotDotDashHeavy26粗点-点-划线相间模式。

wdUnderlineDotted4点。

wdUnderlineDottedHeavy20粗点。

wdUnderlineDouble3双线。

wdUnderlineNone0无下划线。

wdUnderlineSingle1单线。 默认值。

wdUnderlineThick6单粗线。

wdUnderlineWavy11单波浪线。

wdUnderlineWavyDouble43双波浪线。

wdUnderlineWavyHeavy27粗波浪线。

wdUnderlineWords2仅为单个字加下划线。

2)’添加两个矩形,填充紫色

ActiveDocument.Shapes.AddShape msoShapeRectangle, 50, 50, 100, 200

ActiveDocument.Shapes.AddShapemsoShapeRectangle, 150, 150, 100, 200

ActiveDocument.Content.ShapeRange.Fill.ForeColor.RGB= _

RGB(255,0, 255)

以上代码会添加两个矩形图形,关于图形的添加我们会在以后讲解到,msoShapeRectangle

是指矩形,后面跟的四个数值分别指图形的位置Left, Top大小Width,Height。

添加图形后给图形添加上紫色RGB(255, 0, 255),大家要注意添加颜色的写法: ActiveDocument.Content.ShapeRange.Fill.ForeColor

3) ‘添加图表,图表的第一列填上数据

ActiveDocument.Paragraphs.Add

以上代码添加一个新的段落

4) Set myTable = ActiveDocument.Tables.Add(Range:=ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range, NumRows:=3, NumColumns:=3, DefaultTableBehavior:=wdWord9TableBehavior)

以上代码是添加一个图表

5)Num = 100

For Each myCell In ActiveDocument.Tables(1).Columns(1).Cells

myCell.Range.Text= Num & ” VBA”

Num= Num + 1

Next

以上代码是在图表的首列填上内容,

下面看代码的运行情况:

今日内容回向:

1什么是Word中Range对象的Tables属性、Underline属性、ShapeRange属性的意义是什么?

2如何设置段落的图表、图形及下划线?

本讲内容参考程序文件:Doc 005文档.docm

我20多年的VBA实践经验,全部浓缩在下面的各个教程及应用工具中: