科学研究表明,人类接受不同类型信息的难易程度(由难到易):文字<数字<图片<动画<视频。

通过前面的内容我们已经学会如何将多个工作表数据汇总(分类汇总之多个工作表合并到同一张工作表中),会用数据透视表与切片器从不同唯独分析数据(数据透视表与切片器)。本节我们学习如何巧用vba获取动态数值,作为offset函数(offset函数与Excel动态图表)的参数,生成动态数据区域,并用名称管理器定义该区域,然后插入合适类型的图表,并将名称管理器自定义的数据区域作为图表数据源。

本次内容仍使用之前网抓的的2008-2019中国电影排行榜数据(汇总后的数据)。

一、Excel中生成动态图表。动态展现2008-2019年每年票房排行榜前25电影的票房数据:

第一步,借助数据透视表,整理所需要的数据,得到下图所示数据

excel作图的心得(相见恨晚的Excel作图技巧)(1)

第二步,巧用vba代码动态控制年份变化,并将当前的结果输出到指定单元格中,代码如下:

'动态控制年份变化 Sub year() If Range("h2") < 2019 Then Range("h2") = Range("h2") 1 Else Exit Sub End If '每隔三秒变化H2单元格的值 Application.OnTime Now TimeValue("00:00:03"), "year" End Sub '设置起始年份为2008 Sub initiate() Range("h2") = 2008 End Sub

第三步,增加辅助单元格,引用上一步的动态数值。在F2单元格输入公式=(H2-2008)*25 1(H2为动态年份,每年有25组数据,offset函数从第一行开始,每次向下偏移25行),计算结果作为offset函数参数,控制offset函数向下偏移的行数。

excel作图的心得(相见恨晚的Excel作图技巧)(2)

第四步,定义名称,用第三步中的两个参数,通过offset函数获取动态数据区域。新建影片名=OFFSET(Sheet2!$B$1,Sheet2!$F$2,0,25,1)和总票房=OFFSET(Sheet2!$C$1,Sheet2!$F$2,0,25,1)两个名称

excel作图的心得(相见恨晚的Excel作图技巧)(3)

excel作图的心得(相见恨晚的Excel作图技巧)(4)

第五步,插入条形图。选择数据区域为第三步定义的名称---->调整图表大小至合适大小---->设置图表样式---->选中纵轴坐标---->逆序刻度值---->添加数据来源---->修改图表标题并用文本框引用公式实现标题动态变化---->插入命令按钮,并将第二步中的宏链接到按钮上。

excel作图的心得(相见恨晚的Excel作图技巧)(5)

第六步,点击命令按钮,查看动态效果。

二、借助可视化工具Flourish生成动态图,动态展现2008至当前排名前10电影的名称和票房数据。

第一步,选择里面的Bar chart race 模板,点击data,查看所需要的数据格式,将数据整理成模板里面的格式

excel作图的心得(相见恨晚的Excel作图技巧)(6)

excel作图的心得(相见恨晚的Excel作图技巧)(7)

excel作图的心得(相见恨晚的Excel作图技巧)(8)

第二步,导入数据(注意选择数据所在工作表),修改设置内容,保存和发布可视化结果。

excel作图的心得(相见恨晚的Excel作图技巧)(9)

可视化结果观看地址:public.flourish.studio/visualisation/489206/

西瓜视频地址:ixigua/i6712392102887555587/

数据和图表下载地址:/s/1xCds79hmbgbfvG-T6Jg_9A

提取码:w82b

,