前两天同学从我这里拷贝资料的时候,顺便拷走了一个动态图表的Excel文件。打开一看,选择一个数据就有不同的图表出来,觉得超酷! 对,像这样的: 上图算是Excel动态图表里比较简单的,使用了开发工具。一般情况下, Excel的开发工具选项卡默认是没有显示的,需要添加显示出来: 1、第一步,加入控件 在“开发工具”里插入控件: 在控件的属性里,设置控件可以选择的内容,将单元格链接设置在任意单元格,顺便设置一下三维阴影: 从上图可以看出,选择第一项,连接的单元格出现数字“1”,选择第二项,出现数字“2”,以此类推。 2、第二步,创建辅助列 我们将标题复制下来,根据控件连接的单元格数字的变化,用函数引用对应的数据: 上图的函数是:=index($B$2:$E$5,$A$8,match(B$7,$B$1:$E$1,)) 如果不熟悉index函数,可以用vlookup。 3、第三步,添加图表 选中创建的辅助列,插入柱形图: 最后删掉图列和网格线,并添加数据标签,记住:Less is more. 做好之后,你的图表就由控件控制了! 再进阶一层。 从下图可以看出:我们可以在滚动条两段进行点击,也可以直接拖动,在折线上有个对应的发光点。 4. 首先,插入横条控件 在控件上点击鼠标右键,选择控件的属性:将整个控件分为平均分为12份(即最小值为1,最大值为12)。控件的单元格链接可定位在A3单元格,点击控件左右方向键可以看书链接的单元格也有数字变化。 5、函数的那些套路 其实,我们还是要用原始数据作为折线,那个发光的点则要用函数去实现:当控件移动到第N个,第N个值就等于原来的数字,其它为NA()——利用“带数据标记的折线图”。 我们先用最简单的vlookup函数将年份”2016“作为查询值来引用控件控制的第N个值:=vlookup($A$2,$A$2:$M$2,$A$6 1) ![]() 我们只需要实现Vlookup查寻出来的值等于控件控制的第N个值,其它返回为NA()。 所以用if函数来判断一下:=if(=vlookup($A$2,$A$2:$M$2,$A$6 1)=B$2,B$2,NA()) ![]() 如果你的函数学的不错,用一个index加if也是可以搞定的: ![]() =if(index($B$2:$M$2,0,$A$6)=B$2,B$2,NA()) 6、插入图表 选择标题、数据和辅助列插入“带数据标记的折线图”,记住删除图例、坐标轴和网格线: ![]() 选中图表,更改图表类型: 上图步骤适用于2013版本以上,2010版本以下需要自己摸索一下,不难。 最后,选中那个点做一下美化就好了: ![]() 或许,你在移动图表的时候会发现滚动条不跟着图表一起走,将他们组合配成一对儿就形影不离了! ![]() |
|