Excel
以13版为例
本教程以下列数据为例。
插入一个ActiveX控件作为生成/刷新图表的按钮,本教程以插入一个命令按钮为例。
绘制好控件之后,右键单击该控件,选择命令按钮对象,编辑。
本教程编辑按钮名称为柱状图初级篇。
再次鼠标右键点击控件,在弹出的菜单中,选择查看代码。
此时会自动跳转到VBA界面,如图所示,并弹出一个代码窗口。
在代码窗口,复制粘贴以下代码(覆盖粘贴):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
关闭VBA窗口,回到Excel窗口,先将Excel文档另存为启用宏的工作簿,以便保存代码,后缀名为xlsm。PS:本教程新建文档时就直接另存为xlsm格式,故跳过此步骤。
增加或减少表格数据之后,单击按钮即可生成/刷新图表。
删除一列E列数据之后,图表中的最后一组数据也自动删除了,此时再单击一下控件,可以刷新图表,最终效果如图所示。
注:教程中所提及的未指明的单击或点击,均值鼠标左键单击操作。
若单击按钮无反应,可以先保存成xlsm格式后,重启该Excel文档。
如果对您有点帮助,请帮忙点个赞再走,谢谢!