手工将图形对象插入Excel工作表非常方便。如果需要在工作表中插入大量的图形,或者绘制的图形对象的大小和位置非常精确,则不方便手工绘制。此时,图形对象的绘制可以通过VBA程序来完成。本文以在工作表中绘制三角形为例,介绍了在Excel工作表中添加图形的方法。
1、启动Excel并打开Visual Basic编辑器,在工程资源管理器中插入一个模块,在模块的“代码”窗口中输入程序代码,如图1所示。具体的程序代码如下所示:
Sub DrawTr()
Dim triArray(1 To 4,1 To 2)As Single
triArray(1,1)=25
triArray(1,2)=100
triArray(2,1)=100
triArray(2,2)=150
triArray(3,1)=150
triArray(3,2)=50
triArray(4,1)=25
triArray(4,2)=100
Worksheets(1).Shapes.AddPolyline triArray
Worksheets(1).Shapes(1).Fill.ForeColor.RGB=RGB(15,100,255)
End Sub
图1 创建模块并输入程序代码
提示
在VBA中,使用Shapes对象的AddPolyline方法能够创建一个不封闭或封闭的多边形,该方法将能够返回一个代表新的连续线段或多边形的Shape对象。该方法的语法格式如下所示:
表达式AddPolyline(SafeArrayOfPoints)
这里,表达式是一个代表Shapes对象的变量,该方法的SafeArrayOfPoints参数是一个必选参数,其是用于指定多边形顶点的坐标对所组成的数组,坐标对指的是一对数值,该数值表示点的X和Y坐标。
2、按F5键运行该段程序代码,在Excel工作表中将插入一个蓝色的三角形,如图2所示。
图2 在工作表中插入三角形