前言:

很多中小企业或者低成本的数据合作项目,会没有预算去买一些分布式的BI平台。很多数据可视化报表会通过Excel去发送。

而很多人可能不知道,Excel也可以制作成动态可交互式的形式,一方面看上去“高大上”,另一方面可以实现部分的自助式分析功能。

本文以一个小分析场景为例,先展示效果,后一个个手把手指导操作。认同的朋友麻烦点赞收藏。

注:先写一篇试试有没有人看,点赞的多再继续写。

先看效果:

初始状态:

2af617d5f0a420720fdfc08a35f32337.png

横向滚动条:当点击控件时,时间轴会向前滚动。回看历史数据。

de98d94981e3d033be48ead3b03ca63f.png

多选框:点击图例时,可以对维度进行筛选。

12bcf97438d25892cb33c9d9ae19499a.png

这样,在一张图里实现了两个维度的交互式筛选,可以进行自主对比分析。(随机数据,举个例子)

看上去是不是很厉害,下面一步步教你实现。

如果大家能明白其中的原理,可以举一反三。

Excel实现方式:

需要建立3张sheet

32865d38b611123f7eca44ce26fc2576.png

看板:用于放置图表(老板看的)

静态数据源:用于存放处理好的数据(你自己往里贴的,发给老板或者客户可以隐藏)

动态数据源:用于放图表的实际数据源(主要是公式,对外发送的时候一般都隐藏)

贴入原始数据:

随机产生的数据(公式=RANDBETWEEN()),大致这个样子,贴入sheet"静态数据源"

f62720c6dcc2af019328a7365ee1e084.png

制作动态数据源

选中sheet“动态数据源”

先确定一下,图里展示几天的数据,比如15天,多了会挤。

然后预留出1行15个单元格,在最右侧的那个里填入公式:

d4bf1230ea9856a0f61294f70531745f.png

也就是获取静态数据源里最大的那个日期。注意调整格式,否则可能显示的是4万多的数字。(我们展示数据的时候,不能超过这个日期)

在左侧一个单元格内填入公式:

219bb56d38e3ebd570590151dcedb1e4.png

这样能获得一个比右侧单元格早一天的日期。

点击这个单元格的右下角,一路向左把预留的15个单元格填满。

f02db3ba2fc30e32073659a1656ca23b.png

这样就得到了连续15天的日期了。且,只要修改最右侧单元格的日期,其它单元格也能联动。

下一步,我们要让日期动起来。

插入一个滚动条控件。

63453bac7a18d2b98851f24d375ed2ea.png

d38f9ea00abf885967a7b0fea3f1d42b.png
插入时横向拖动

右键点击“设置控件格式”

6552f4e97afb861664e7aff11c720adc.png

按照下图修改格式的值:

66ef3d425a41cccbe7dfaa0fcac2cb61.png

注意:

最大值等于我们希望最多回看多少天的数据,这里取20天。且20天也要填入P2单元格。

在R2单元格中,填入如下公式,

44338eaad8f1e0daca0625bb09d3e128.png

逻辑:R2中的值,实际是“最大步长”减去“控件的输出”,也就是当滚动条在最右侧时,最“最大步长”与“控件的输出”相等,结果为0,相当于向前回看0天(不回看)的数据。

完成后可以试一下,拖动滚动条,R2里的值会不会变小:

e3502a368b209235961905c2c280f8f1.png
最右侧

974ae8853377813ffbacf7f4687d7789.png
拖到中间

下一步就是让刚才铺了15个单元格的日期动起来:

8fb37a6838bd59bf99f6d63bec1775c3.png

只需要在刚才最大日期的单元格中的公式后面加上“-R2”即可。

可是试一下15个“日期”是不是滚动起来了。日期会动了,数据动也不远了。

接下来先插入3个复选框,也可以插入1个后复制3个

1047a4c2403148c870ecc785378b4ee0.png

完成3个后,分别按照下图设置。从上到下分别对应“静态数据源”中的3列(3个城市)

2eb4826e5a6d8b96318e5792be0d81ea.png
注意:单元格链接带上sheet名称

完成后,再分别点击一下3个复选框,B列的3个单元格就会TRUE或者FALSE。

然后在D8单元格中填入如下公式(=IF($B8,VLOOKUP(D$6,静态数据源!$A:$D,2,0),""))

562448102f85161be50fd42c9de2faf2.png

然后横向拖动公式,可完成“上海”的动态数据源。

VLOOKUP的第三个参数根据“静态数据源”的列进行调整,比如本文的例子,北京的调成3,广州调成4。

这样“动态数据源”就基本完成了。

b19f62feb02a75970ac426b381f53cf1.png

然后,选中数据源,插入图片

5ed8b4f632a7c042550f078639e2dd4a.png

调整图例到右侧(不调也行)

最后,删除复选框控件的文本内容,上图中的“复选框8”,变成只有一个方框的样子。并调整大小,最好小一点。

ed8d5aa8178f530e9b375da96ade27ab.png

然后拖到图例对应的位置即可。

eff78663ec86f70a768d4642343628fd.png

剩下两个复选框以此类推。

最最最后,把图和框架都放到sheet“看板”里,就大功告成了。可以自己试试看。

小结:

交互式可视化的思路就是利用控件+公式,去实现控件操控图表输入数据源的原理。

按照这个思路可以用Excel实现很多交互式图表,让Excel成为一个BI工具。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐