1700428990
1700428991
5.准备动态图表数据源。
1700428992
1700428993
假设各省的数据存放在工作表data1中,其中A列为省名,与地图图形的名称对应;C~N列为各省1~12月的指标数据,如图5-12所示。
1700428994
1700428995
1700428996
1700428997
1700428998
图5-12 动态图表的数据组织
1700428999
1700429001
1700429002
C2: =VLOOKUP($A$2,$A$5:$N$36,COLUMN(C5),0)
1700429003
1700429004
将此公式向右复制到N2。这样,当用户通过前面的地图选择器选择某个省时,该省的数据就会被查找引用到第2行。
1700429005
1700429006
6.制作动态图表。
1700429007
1700429009
1700429010
7.测试模型。
1700429011
1700429012
现在,用鼠标在地图上选择不同的省份,你会发现图表将自动跟随变化。检查并确认动态图表的数据引用正确。至此,一个基于地图选择的动态图表模型已经完成。
1700429013
1700429014
你可以继续使用第5~6步的方法,在其他工作表中准备数据,制作更多的图表,并且都放置到工作表dashboard中,与地图一起排列好,成为一个综合的动态仪表板,通过一个地图选择器同时控制多个图表、表格或者KPI显示。
1700429015
1700429016
本做法的主要技巧在于地图选择器的构造,其他与5.1节动态图表技术准备中的内容是一样的。
1700429017
1700429018
懒人直接用
1700429019
1700429020
在随书范例包中找到并打开“5.4基于地图选择的动态图表(鼠标点击版).xls(或.xlsm)”文件,启用宏。
1700429021
1700429022
●在data1工作表中输入各省数据。
1700429023
1700429024
●在dashboard工作表中测试动态图表,检查无误。
1700429025
1700429026
若要反映的数据源不是时间序列,或时间序列的周期不是12,可按前述步骤修改相应的地方或图表类型。
1700429027
1700429029
5.5 基于地图选择的动态图表(鼠标移动版)
1700429030
1700429031
5.4节介绍的鼠标点击版的基于地图选择的动态图表,每次切换区域都需要在地图上点击一下,点多了手就会有些不适。而我一直想模仿的一种效果是,鼠标在地图上移动,当悬停在某个区域上时,图表就自动切换为该区域的数据。
1700429032
1700429033
很多网友一起参与了这个讨论,提出了多种做法,包括图表事件法、工作表事件法、钩子法等。其中网友chrisfang的做法最为简洁[2],我在其基础之上进行了简化和完善,介绍给大家。
1700429034
1700429035
作图思路
1700429036
1700429037
在Excel中,可以通过API函数获取鼠标位置,然后获取处于这个位置上的对象。如果是地图图形,则将其名称记录下来,作为动态图表的输入参数。剩下的事情,就与5.4节一样了。
1700429038
1700429039
作图步骤
[
上一页 ]
[ :1.70042899e+09 ]
[
下一页 ]