Excel中用到畫圖功能,也是一個很特别的方面,在于使一個工作表,變成可視化顯示很好的界面,呈現出來。
本文介紹用VBA代碼實現對線條和箭頭進行的各種設置方法。
可根據不同的屬性對,線條和箭頭進行設置,然後在工作表中顯示。
如下圖所示,利用一些數據設置,繪制出箭頭和線條的形狀。
要繪制出一個線條首先利用的是Shapes對象的Add方法,如下代碼:
ExcelObj.Shapes.AddLine(100, 100, 200, 100)
而Shapes是WorkSheet下的屬性,這樣解釋起來就有點複雜了。
總之流程如下:
WorkSheet對象-Shapes屬性-AddLine方法
通過上面的代碼就可以在工作表中建立一條直線,然後就是對這條直線進行屬性設置。
利用另一個屬性來返回一個對象進行設置。
那就是新建直線的Line屬性,返回一個LineFormat對象。
示例:
set NewLineFormat=SheetObj.Shapes.AddLine(Tx, Te, Ex, Ee).Line
本文重點就是這個LineFormat對象,其下屬性有如下表格:
LineFormat 屬性 |
Application |
BackColor |
BeginArrowheadLength |
BeginArrowheadStyle |
BeginArrowheadWidth |
Creator |
DashStyle |
EndArrowheadLength |
EndArrowheadStyle |
EndArrowheadWidth |
ForeColor |
InsetPen |
Parent |
Pattern |
Style |
Transparency |
Visible |
Weight |
設置不同的屬性可對線條樣式有一些特别的呈現。
其中用到一些枚舉類型,這些枚舉的值是已經預置完成的,隻要按不同的值或名稱進行設置就可以,其實沒有特别的困難,唯一困難的是考驗英語能力,就是這麼簡單。
直線樣式
線條樣式示例:
NewLineFormat.DashStyle = msoLineDashDotDot
箭頭樣式
箭頭樣式示例:
NewLineFormat.BeginArrowheadStyle = msoArrowheadOval
NewLineFormat.BeginArrowheadLength = msoArrowheadShort
其實就是設置線條開始、中間和結尾3個部位的樣式。
開始用Begin表示,結尾用End表示,線條用DashStyle。
ArrowHead 就是箭頭的英文翻譯。
弄明白上面的内容,看一下代碼就很容易理解了。
代碼
Private Sub AddNewLine()
Dim Tx As Long, Te As Long, Ex As Long, Ee As Long
Tx = Range("C4").Value
Te = Range("E4").Value
Ex = Range("G4").Value
Ee = Range("I4").Value
xColor = Range("O4").Interior.Color
Set myDocument = Worksheets(1)
With myDocument.Shapes.AddLine(Tx, Te, Ex, Ee).Line'新建線條
.DashStyle = msoLineDashDotDot'線條樣式
.ForeColor.RGB = RGB(50, 0, 128)'線條顔色
.BeginArrowheadLength = msoArrowheadShort'箭頭開始長度
.BeginArrowheadStyle = msoArrowheadOval'箭頭開始樣式
.BeginArrowheadWidth = msoArrowheadNarrow'箭頭開始寬度
.EndArrowheadLength = msoArrowheadLong'箭頭結尾長度
.EndArrowheadStyle = msoArrowheadTriangle'箭頭結尾樣式
.EndArrowheadWidth = msoArrowheadWide'箭頭結尾寬度
End With
線條的主要設置就是這樣一些内容,當然還有背景顔色和灰度值的一些相關屬性,在使用的時候可以進行一下設置學習。
歡迎關注、收藏
---END---
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!