如何在 vba 中创建饼图(附示例)


您可以使用以下基本语法在 Excel 中使用 VBA 创建饼图:

 SubCreatePieChart ()

    Dim MyChart As ChartObject
    
    ' get input range from user
    Set Rng = Application.InputBox(Prompt:=" Select chart input range ", Type:=8)
    
    'create pie chart
    Set MyChart = Worksheets(" Sheet1 ").ChartObjects.Add(Left:=ActiveCell.Left, _
    Width:=400, Top:=ActiveCell.Top, Height:=300)
    
    MyChart.Chart.SetSourceDataSource:=Rng
    MyChart.Chart.ChartType = xlPie

End Sub

这个特定的宏将询问用户输入范围,然后使用输入范围自动生成饼图,并将其插入到名为Sheet1的工作表中,图表的左上角位于当前活动的单元格中。

以下示例展示了如何在实践中使用该宏。

示例:如何在 VBA 中创建饼图

假设我们在 Excel 中有以下数据集,其中包含有关各个篮球运动员得分的信息:

假设我们想要使用 VBA 使用此数据集生成饼图。

我们可以创建以下宏来执行此操作:

 SubCreatePieChart ()

    Dim MyChart As ChartObject
    
    ' get input range from user
    Set Rng = Application.InputBox(Prompt:=" Select chart input range ", Type:=8)
    
    'create pie chart
    Set MyChart = Worksheets(" Sheet1 ").ChartObjects.Add(Left:=ActiveCell.Left, _
    Width:=400, Top:=ActiveCell.Top, Height:=300)
    
    MyChart.Chart.SetSourceDataSource:=Rng
    MyChart.Chart.ChartType = xlPie

End Sub

要运行此宏,我们可以单击 Excel 顶部功能区的“开发人员”选项卡,然后单击“宏”

然后我们可以单击标记为CreatePieChart的图标,然后单击Run

单击“运行”后,系统将提示我们输入条形图的输入范围:

我们将输入A1:B7 ,然后按OK

将自动创建并显示以下饼图,图表的左上角位于当前活动单元格(恰好是单元格D2 )中:

注意:您可以更改ChartObjects.Add()函数中的WidthHeight参数的值来分别调整饼图的宽度和高度。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

如何在 VBA 中创建条形图
如何在VBA中对值进行四舍五入
如何在VBA中对值进行四舍五入

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注