Excel vba 的強大是無法估計的,除對數據進行一些處理之外,它還有許多圖形管理方面的方法,通常由于其難度較大,真正學會的人并不鮮見。
辦公工作當中,有時候需要制作一個公司印章來處理合同文本。本節将制作一個印章自動生成的方法,需要的就趕快收藏起來。
如下圖所示,生成一個印章,當然了,以圓形為代碼,想生成其它形狀,可聯系作者修改格式,這裡不做介紹。
其實整個操作過程并不複雜,讓我們分析一下,整個過程,具體制作的代碼,文章後面有介紹。
印章中有三個對象組成,一個文本框,1個圓形對象和一個五角形圖形對象。
添加方法分别為:
很顯然隻用了一個方法,Shapes.AddShape()
這個方法就是添加圖形對象的作用,其中的第一個參數為圖形類型,TLWH,分别代表圖形的頂部邊距,左邊距,寬和高。
其中圖形類型是一個MsoAutoShapeType 枚舉值,代表了不同的圖形,大約有幾十種或者更多,在對應着插入菜單中的各種圖形,有興趣可自己對照學習。
No.2
接下來,看一下實現的過程。
制作過程,首先輸入公司名稱,然後單擊一下鼠标就完成了。
操作很簡單,其原因是完全用代碼來進行處理,下面是參考代碼:
添加印章文字
Sub AddText(T, L, W, H, Str)
'添加文字
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, T, L, W, H).Select
Selection.ShapeRange.TextFrame2.TextRange.Characters.Text = Str
Selection.ShapeRange.Fill.Visible = msoFalse
With Selection.ShapeRange.TextFrame2.TextRange.Font
.Fill.Visible = msoTrue
.Fill.Solid
.Fill.ForeColor.RGB = RGB(255, 1, 1)
.Size = 38
.Name = "仿宋"
.Bold = True
End With
Selection.ShapeRange.TextEffect.PresetShape = msoTextEffectShapeArchUpCurve
End Sub
添加印章外邊框圓形
Sub AddOval(T, L, W, H)
'添加一個圓
ActiveSheet.Shapes.AddShape(msoShapeOval, T, L, W, H).Select
Selection.ShapeRange.Fill.Visible = msoFalse
With Selection.ShapeRange.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 0, 0)
.Transparency = 0
.Weight = 4.5
End With
End Sub
添加五角星
Sub Add5PointStar(T, L, W, H)
' 添加一個五角星
ActiveSheet.Shapes.AddShape(msoShape5pointStar, T, L, W, H).Select
With Selection.ShapeRange.Line
.Visible = msoFalse
.ForeColor.RGB = RGB(255, 0, 0)
.Transparency = 0
End With
With Selection.ShapeRange.Fill
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 0, 0)
.Transparency = 0
.Solid
End With
End Sub
這個小功能還是十分有意思的,但是不能做不應該做的事情,歡迎關注、收藏。
最後欣賞一下制作成果。
---END---
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!