专栏名称: Excel图表之道
畅销书《Excel图表之道》同名公众号。作者@刘万祥ExcelPro,专注于专业有效、简单实用的商务图表沟通之道,帮助您用Excel制作出具有杂志级品质的商业图表。
目录
相关文章推荐
完美Excel  ·  使用deepseek在Excel用户窗体中生 ... ·  昨天  
Excel之家ExcelHome  ·  让Excel自动检测录入的数据 ·  2 天前  
Excel之家ExcelHome  ·  TEXT函数用处多,多干工作多背锅 ·  3 天前  
Excel之家ExcelHome  ·  还在手动筛选数据?FILTER函数这几种典型 ... ·  2 天前  
完美Excel  ·  deepseep+Python实现自动合并E ... ·  4 天前  
51好读  ›  专栏  ›  Excel图表之道

Excel足迹地图第2篇,再来一个厉害的用法:如何制作一键全选的复选框

Excel图表之道  · 公众号  · Excel  · 2018-06-14 07:00

正文

上篇帖子的 足迹地图做法 ,是基于几年前《用地图说话》书中的范例,使用形状和vba,适合于 2003~2016 所有版本,不过略为麻烦。


如果你使用 365 版本的 Office,地图的绘制已有内置功能来实现,那就非常简单了。在这篇练习里,除了复选框和地图,我们再增加一个 “一键 Clear All 复选框” 的功能。完成的效果如下图。


(足迹地图练习小品第2篇效果演示)


原理简介


使用省名和复选框勾选的结果插入365地图,即可得到足迹地图。复选框使用我们的个人宏代码一键批量高效插入。


我们按如下步骤来练习:


1、制作复选框。


上篇已经说过,这么多复选框要插入、对齐、改文字、链接单元格,手动做是太麻烦太累了。一键批量高效插入的方法,有点小复杂,参见《向经济学人学图表》第2季里的介绍。


(一键批量高效插入复选框并链接单元格)


2、插入地图。


使用图中的B和D列,已经可以插入365版本的地图了。不过为了便于理解,范例里我们还是将TRUE和FASLE转换为1和0来作图。


这里需要365版本,其他版本目前还没有这个地图功能。低版本打开本贴范例文件时这个地图会显示为报错的空白。


(365版本的地图功能)


现在的地图默认是世界地图,可在地图区域选中“仅包含数据的区域”,则显示为中国地图。


这里有个小问题,你的中国地图可能不是像我们例图里昂首挺胸的雄鸡状, 和国家标准的中国地图形象有所区别。 所有和国家标准中国地图不一致的都不是好地图。


(右侧是正确的中国地图投影)


你调整地图投影为 麦卡托投影,略接近些,但公鸡的头是低着的,胸是比较小的。其他投影方式差别更大。


那怎样才能设置出例图里昂首挺胸的中国地图呢?这可能是微软的一个bug。我的小技巧:


TIPS:你同时打开我们的范例文件,然后在自己的练习文件里插入地图,或许就是和范例一样的昂首挺胸的中国地图了。


现在,勾选复选框,地图已经可以即时反映了,交互式足迹地图已经有了。


3、增加一个 Clear All 的功能。


在这次的练习里,我想给模型增加一个 Clear All 的功能,即可以批量勾选或取消勾选各省的复选框。这在分析仪表板中是经常需要的。


不过,Excel并没有提供这样的功能。我们可以使用宏代码来完成,很简单,只有1句话,复杂的我不会,也不想会。


先命名 Clear All 复选框链接的单元格为 check_all,命名各省的链接单元格区域为 check_1by1。然后按Alt+F11插入模块,输入如下的宏代码:


Sub clear_all()

[check_1by1] = [check_all]

End Sub


是不是太简单?使用名称后代码变得简洁易懂。把这个宏指定给 Clear All 复选框。


这样,当勾选或取消勾选 Clear All 的时候,就执行宏代码,将各省的链接单元格 区域 check_1by1 全部填充为 check_all 单元格的值,实现了一键全选或全不选的功能。


(DIY一键全选或全不选的功能)


划重点,这里是我们这篇帖子想介绍给大家的做法和技巧,极其简单但从没有过的厉害用法。







请到「今天看啥」查看全文