本文分享一个动态图表示例,效果如下图1所示。当按下工作表中不同的按钮时,图表会自动更新,高亮显示相应数据系列的数据点。
本文分享一个动态图表示例,效果如下图1所示。当按下工作表中不同的按钮时,图表会自动更新,高亮显示相应数据系列的数据点。
图1
制作图表的数据如下图2所示。
图2
步骤1:绘制图表。选择数据单元格区域A2:D6,单击功能区选项卡“插入—图表—带数据标记的折线图”,结果如下图3所示。
图3
步骤2:绘制形状按钮。单击功能区选项卡“插入—形状—圆角矩形”,如下图4所示。
图4
在工作表中插入一个圆角矩形,添加文本。同样的操作,再插入2个圆角矩形,并添加文本。将这三个圆角矩形放置到图表上方并排列整齐,如下图5所示。
图5
步骤3:给圆角矩形按钮命名。选择文本为2016的圆角矩形形状,在工作表左上角的名称框中输入“2016”,如下图6所示。
图6
同样的操作,给文本为2017和2018的圆角矩形形状分别命名为“2017”和“2018”。
步骤4:利用公式提取数据。
1.在单元格F2中输入“2016”。
2.在单元格F3中输入公式:
=INDEX($B$3:$D$6,ROWS($E$3:E3),MATCH($F$2,$B$2:$D$2,0))
3.选择单元格F3,下拉至单元格F6,填充公式。
结果如下图7所示。
图7
步骤5:在图表中添加并格式化新系列。选择单元格区域F3:F6并复制(按Ctrl+c组合键),选中图表并粘贴(按Ctrl+v组合键)。此时,在图表中创建了与某一年份相同的数据系列,只是颜色不同,如下图8所示。
图8
1.选取刚创建的新系列,单击右键,选取“设置数据系列格式”命令,设置线条为“无线条”,如下图9所示。
图9
2.在标记选项中,设置内置类型为“圆形”,填充为“无填充”如下图10所示。
图10
3.继续设置该系列的数据标记边框格式,设置边框为“实现”,颜色为红色,宽度1.5磅,线型为“短划线”,如下图11所示。
图11
4.选中数据标记,单击右键,添加数据标签,如下图12所示。
图12
5.选中添加的数据标签,设置其数字格式为百分比,结果如下图13所示。
图13
步骤6:编写VBA代码。
1.按Alt+F11组合键,打开VBE编辑器,插入标准模块并在其中输入下面的代码:
Sub SelectYear2016()
Range(“F2”).Value = 2016
ActiveSheet.Shapes(“2016”).Fill.ForeColor.RGB = RGB(176, 196,222)
ActiveSheet.Shapes(“2017”).Fill.ForeColor.RGB = RGB(255, 255,255)
ActiveSheet.Shapes(“2018”).Fill.ForeColor.RGB = RGB(255, 255,255)
End Sub
Sub SelectYear2017()
Range(“F2”).Value = 2017
ActiveSheet.Shapes(“2016”).Fill.ForeColor.RGB = RGB(255, 255,255)
ActiveSheet.Shapes(“2017”).Fill.ForeColor.RGB = RGB(176, 196,222)
ActiveSheet.Shapes(“2018”).Fill.ForeColor.RGB = RGB(255, 255,255)
End Sub
Sub SelectYear2018()
Range(“F2”).Value = 2018
ActiveSheet.Shapes(“2016”).Fill.ForeColor.RGB = RGB(255, 255,255)
ActiveSheet.Shapes(“2017”).Fill.ForeColor.RGB = RGB(255, 255,255)
ActiveSheet.Shapes(“2018”).Fill.ForeColor.RGB = RGB(176, 196,222)
End Sub
2.给圆角矩形指定宏。选取文本为2016的矩形并单击右键,单击“指定宏”命令,在“指定宏”对话框中选取SelectYear2016,如下图14所示。
图14
同样,为其它两个形状指定相应的宏。
至此,图表制作完成。当你单击图表上方的矩形按钮时,就会出现前面图1所示的效果。