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在文檔中添加圖形及隱藏圖形 - 天天要聞

分享成果,隨喜正能量】因為生命有衰亡,才有了時間概念,如果生命是永恆的,那時間也就不存在了。。

科技分類資訊推薦

硬核出擊!Jeep與《侏羅紀世界》聯名款新車正式上市 - 天天要聞

硬核出擊!Jeep與《侏羅紀世界》聯名款新車正式上市

當硬核越野精神邂逅全球頂級IP,沉睡6500萬年的野性基因再度覺醒。2025年7月2日,Jeep圍繞電影《侏羅紀世界:重生》開啟跨界聯名合作,並發布兩款終極探索座駕——Jeep牧馬人侏羅紀世界探索版與Jeep角鬥士侏羅紀世界探索版。
十多年未解謎症,ChatGPT一語道破病因?微軟:“醫療超級智能”漸近 - 天天要聞

十多年未解謎症,ChatGPT一語道破病因?微軟:“醫療超級智能”漸近

《科創板日報》7月6日訊 十多年未解的疑難雜症,竟被AI一語道破病因?這個看似有些科幻的故事,來自一位網友在Reddit上分享的經歷,OpenAI總裁兼聯合創始人Greg Brockman也在今日轉發了這一事件。在這則Reddit帖子中,這位網友表示,十多年來自己一直被多種不明癥狀困擾。為此他做過脊椎核磁共振、CT 掃描、全套血液檢查(...
坐標北京,如何在體感40℃+的“桑拿天”保持優雅? - 天天要聞

坐標北京,如何在體感40℃+的“桑拿天”保持優雅?

最近咱們北京的天氣,可以說是“水深火熱”——早上出門像蒸桑拿,下午陣雨說來就來,晚上悶得睡不着覺。很多網友在後台留言“這天氣也太難熬了!”。高濕天氣連續多日達到90%以上的濕度,讓很多市民朋友高呼“難道回南天來了嗎?”今天,我們特意針對這個熱門話題,為大家詳細普及“回南天”和“桑拿天”的區別,還會教您...
徹底火了,庫存告急!訂單已排到半月後 - 天天要聞

徹底火了,庫存告急!訂單已排到半月後

近期,“充電寶召回” 事件引發廣泛關注,3C認證已成為消費者衡量充電寶品質的關鍵指標,國內部分機場也加強了對充電寶3C標識的查驗力度。央視財經記者探訪發現,線下市場和電商平台帶有3C標識的充電寶產品銷量都出現增長。