Excel一键自动生成/刷新柱状图:初级篇
1、本教程以下列数据为例。

2、插入一个ActiveX控件作为生成/刷新图表的按钮,本教程以插入一个命令按钮为例。

3、绘制好控件之后,右键单击该控件毙罩棍,选择命令按钮对象,编辑。


4、本教程编辑按钮名称为柱状图初级篇。

5、再次鼠标右键点击控件,在弹互调出的菜单中,选择查看代码。

6、此时会自动跳转到VBA界面,如图所示,并弹出一个代码窗口。

7、在代码窗口,复制粘贴以下代码(覆盖粘贴):
Private Sub CommandButton1_Click()
Dim i%, j%
on error resume next
ActiveSheet.ChartObjects(1).Activate
ActiveChart.Parent.Delete
i = Application.WorksheetFunction.CountA(Sheet1.Columns("A:A"))
j = Application.WorksheetFunction.CountA(Sheet1.Rows("1:1"))
Range(Cells(1, 1), Cells(i, j)).Select
ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
ActiveChart.SetSourceData Source:=Range(Cells(1, 1), Cells(i, j))
End Sub

8、关闭VBA窗口,回到Excel窗口,先将Excel文档另存为启用宏的工作簿,以便保存代码,后缀名为xlsm。
PS:本教程新建文档时就直接另存为xlsm格式,故跳过此步骤。

9、增加或减少表格数据之后,单击按钮即可生成/刷新图表。

10、删除一列E列数据之后,图表中的肤三最后一组数据也自动删除了,此时再单击一下控件,可以刷新图表,最终效果如图所示。

