如何用vba在excel工作表中插入半圆?

如何在excel工作表中插入半圆? 一文中我们介绍了如何通过操作在excel中插入半圆。

但是细心的你可能已经发现了,通过调整“不完整圆”虽然可以调整到形式“半圆”的图形,但是不能获得一个精准的“半圆”。

通过vba,我们可以实现插入一个精准的半圆。

在vba中可以用Shapes集合对象的AddShape方法插入图形。

AddShape方法的语法如下:

expression. AddShape( _Type_ , _Left_ , _Top_ , _Width_ , _Height_ )

其中Type参数表示要插入的图形的类型,具体的参数值可以见图形类型

比如以下的代码将在工作表中插入一个“不完整圆”:

Sub QQ1722187970()
    Dim oSP As Shape
    Dim oWK As Worksheet
    Set oWK = Excel.ActiveSheet
    Set oSP = oWK.Shapes.AddShape(msoShapePie, 100, 100, 100, 100)
End Sub

然后通过Shape对象的Adjustments属性返回Adjustments对象。

通过设置Adjustments对象的值,实现精准半圆。

比如上述代码运行后插入的“不完整圆”具有2个Adjustment 点,如下图所示:

为此可以通过调整Adjustments对象的值画出精准半圆,代码如下:

Sub QQ1722187970()
    Dim oSP As Shape
    Dim oWK As Worksheet
    Set oWK = Excel.ActiveSheet
    Set oSP = oWK.Shapes.AddShape(msoShapePie, 100, 100, 100, 100)
    With oSP
        '将第一个调节点旋转90°
        .Adjustments(1) = 90
    End With
End Sub

代码运行后如下图所示:

在excel中插入了一个精准的半圆。

 

 

 

 

       

发表评论