VBA在文档中添加图形及隐藏图形

2022年10月03日09:10:25 科技 1478

分享成果,随喜正能量】心生喜乐的时候,我们并没有看到隐藏在背后的痛苦,心生宁静的时候,那起伏不定的情绪正在赶来的路上,所有的事物都不会持久,也不会永恒,这就是无常。。

《VBA之Word应用》(10178982),是我推出第八套教程,教程是专门讲解VBA在Word中的应用,围绕“面向对象编程”讲解,首先让大家认识Word中VBA的对象,以及对象的属性、方法,然后通过实例让大家感受到Word VBA 的妙处。本套教程共三册十六章,今日内容为第九章之第6节:VBA在文档中添加图形及隐藏图形

VBA在文档中添加图形及隐藏图形 - 天天要闻

第六节 Shape对象的属性(三)

大家好,我们这节继续Shape对象的属性讲解,上一讲给大家讲解Shape对象的Name属性,Shadow属性和TextFrame属性。这节给大家介绍Shape对象的TextEffect属性,Visible属性和Type属性。

1 Shape.TextEffect属性

该属性返回一个TextEffectFormat对象, 该对象包含指定形状的文本效果格式设置属性。 此为只读属性。

语法:expression.TextEffect

其中expression 是必须的,代表一个Shape对象的变量。

  • 此属性适用于代表艺术字的Shape对象。

2 Shape.Visible属性

该属性指定的对象或应用的格式,是可见的则返回true 。

语法:expression.Visible

其中expression 是必须的,代表一个Shape对象的变量。

3 Shape.Type 属性

该属性返回嵌入式图形的类型。只读的MsoShapeType。

  • MsoShapeType不同于MsoAutoShapeType两者的枚举值大家可以仔细对照,MsoAutoShapeType是MsoShapeType的类型之一

语法:expression.Type

其中expression 是必须的,代表一个Shape对象的变量.

MsoShapeType 枚举值:

1) mso3DModel 30 3d 模型

2) msoAutoShape 1 AutoShape

3) msoCallout 2 标注

4) msoCanvas 20 画布

5) msoChart 3 图表

6) msoComment 4 批注

7) msoContentApp 27 内容 Office 加载项

8) msoDiagram 21 规划

9) msoEmbeddedOLEObject 7 嵌入式 OLE 对象

10) msoFormControl 8 表单控件

11) msoFreeform 5 任意多边形

12) msoGraphic 28 图形

13) msoGroup 6 Group

14) msoIgxGraphic 24 SmartArt 图形

15) msoInk 22 Ink

16) msoInkComment 23 Ink comment

17) msoLine 9 Line

18) msoLinked3DModel 31 Linked 3D model

19) msoLinkedGraphic 29 链接的图形

20) msoLinkedOLEObject 10 链接 OLE 对象

21) msoLinkedPicture 11 Linked picture

22) msoMedia 16 媒体

23) msoOLEControlObject 12 OLE 控件对象

24) msoPicture 13 图片

25) msoPlaceholder 14 占位符

26) msoScriptAnchor 18 脚本定位标记。

27) msoShapeTypeMixed -2 混和形状类型

28) msoTable 19 Table

29) msoTextBox 17 文本框

30) msoTextEffect 15 文本效果

31) msoWebVideo 26 Web 视频

4 实例:添加图形并有选择的隐藏

这讲的实例中我们将在当前文档中添加些内容,首先添加一块画布,在画布上添加形状圆形;然后再添加些形状。

最后我们用Shape.Type 属性和AutoShapeType属性进行判断,对图形进行有选择的隐藏。我们看代码:

Sub mynzE()

Set myDoc = ActiveDocument

'在当前文档中添加画布

Set myCanvas = myDoc.Shapes.AddCanvas(Left:=10, Top:=20, Width:=150, Height:=400)

'画布中添加形状

myCanvas.CanvasItems.AddShape Type:=msoShapeOval, Top:=25, Left:=25, Width:=150, Height:=150

'当前文档中添加几个自动图形

With myDoc

.Shapes.AddShape msoShapeBalloon, 100, 70, 150, 60

.Shapes.AddShape msoShapeRectangle, 200, 80, 150, 60

.Shapes.AddShape msoShapeCan, 300, 90, 150, 60

End With

For Each myShp In myDoc.Shapes

'隐藏矩形

If myShp.AutoShapeType = msoShapeRectangle Then

'myShp.Visible = True

myShp.Visible = False

End If

'隐藏画布及上面的形状

If myShp.Type = msoCanvas Then

'myShp.Visible = True

myShp.Visible = False

End If

Next

End Sub

代码截图:

VBA在文档中添加图形及隐藏图形 - 天天要闻

代码解读:(略)

代码的运行效果:

我们在代码的中间设置断点,进行两次测试,一是隐藏前的截图,一是隐藏后的截图:

VBA在文档中添加图形及隐藏图形 - 天天要闻

VBA在文档中添加图形及隐藏图形 - 天天要闻

今日内容回向:

1 Word中Shape对象的TextEffect属性,Shadow属性和Type属性的意义是什么?

2 如何利用VBA在当前文档中添加图形及文字,并设置阴影的填充?

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

VBA在文档中添加图形及隐藏图形 - 天天要闻

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

VBA在文档中添加图形及隐藏图形 - 天天要闻

分享成果,随喜正能量】因为生命有衰亡,才有了时间概念,如果生命是永恒的,那时间也就不存在了。。

科技分类资讯推荐

2025款风云A8焕新上市,现金一口价8.99万元起 - 天天要闻

2025款风云A8焕新上市,现金一口价8.99万元起

全民高性能,节能零妥协!4月10日,超能混动新家轿——2025款风云A8于奇瑞“混动之夜”焕新上市,以8.99万元起的现金一口价,将国民混动家轿的价值推向全新高度。作为奇瑞以全球标准打造的轿车,风云A8集高节能、高性能、高安全、高智能四大优势于一身,不仅能在全
技术王炸只要20万,汉L唐L上市,威胁了理想? - 天天要闻

技术王炸只要20万,汉L唐L上市,威胁了理想?

4月9日晚,比亚迪又向汽车市场扔下了一对儿王炸,王朝网全新双旗舰汉L和唐L正式上市。还记得上个月,两车在超级e平台技术发布会上开启预售后,大家说的最多的除了新技术,就是有点贵了(汉L EV预售27-35万元;唐L EV预售28-36万元)。但当时谁也没想到,最
比亚迪双旗舰汉L唐L正式上市,售价20.98万元起 - 天天要闻

比亚迪双旗舰汉L唐L正式上市,售价20.98万元起

4月9日,比亚迪划时代双旗舰车型重磅上市。其中,旗舰轿车汉L共推出汉L EV、汉L DM两大车系。新车长宽高分别为5050*1960*1505mm,轴距2970mm,是标准的C+级轿车。其中,汉L EV坐拥701KM激光雷达尊享型、701KM激光雷达旗舰型、四
汉唐L震撼上市,20万级的市场又要变天了! - 天天要闻

汉唐L震撼上市,20万级的市场又要变天了!

4月9日,比亚迪直接甩出王炸——旗舰轿车汉L和旗舰SUV唐L同步上市!价格直接杀到20万出头(汉L 20.98万起,唐L 22.98万起)。目标很明确:年轻人第一台“超跑级”轿车,大家庭的“全能移动城堡”,这次连特斯拉、BBA和理想都得捏把汗!
长安汽车公布4月新品计划  9款新品将登场亮相 - 天天要闻

长安汽车公布4月新品计划 9款新品将登场亮相

4月8日,长安汽车公布了4月新品计划,包括阿维塔06、阿维塔07探索版、启源 Q07等9款车型即将亮相。新品计划涵盖了多个细分市场,从轿车到SUV,再到新能源车型,展现了长安汽车的产品布局和对市场需求的积极响应。