专栏名称: Excel图表之道
畅销书《Excel图表之道》同名公众号。作者@刘万祥ExcelPro,专注于专业有效、简单实用的商务图表沟通之道,帮助您用Excel制作出具有杂志级品质的商业图表。
目录
相关文章推荐
Excel之家ExcelHome  ·  WPS表格中的几个实用功能 ·  3 天前  
Excel之家ExcelHome  ·  TEXT函数用处多,多干工作多背锅 ·  3 天前  
Excel之家ExcelHome  ·  还在手动筛选数据?FILTER函数这几种典型 ... ·  2 天前  
完美Excel  ·  使用deepseek自动合并“复杂的”Exc ... ·  6 天前  
完美Excel  ·  可以在微信上使用deepseek了 ·  3 天前  
51好读  ›  专栏  ›  Excel图表之道

仿苹果滑动开关的动态图表

Excel图表之道  · 公众号  · Excel  · 2018-04-21 20:49

正文

学员朋友发给我这样一张图表,咨询这个仿苹果风格的滑动开关控件是否可以实现。



从例图看,这个开关控件似乎是二选一的功能,相当于两个单选按钮控件。实际在苹果IOS的界面中,这个开关通常是有 ON、OFF 两个选项,相当于复选框控件。


日常工作中,Excel 的常规窗体控件已经够用。如果学有余力还想拥有个性化,可以自己 DIY 这种开关,会给人一点新意的感觉,但需要一点点 vba 知识。建议学完《让你的图表动起来》课程中传统窗体控件动态图表做法,希望更追求个性化的朋友,可以尝试本帖的做法,否则还是先学习和运用该课程的传统做法。


我们的做法是用形状来绘制开关,给它们赋予宏代码,根据用户点击操作,记下开关状态,同时改变开关的外观。为求动画的逼真,可以使用循环来移动开关按钮的位置。下图是实现的效果。



这个 DIY 模拟的开关控件,相当于一个复选框,它的选择结果记录在一个单元格,驱动动图表变化。关于动态图表的做法,我们已经在《让你的图表动起来》课程里系统整理过,这里不再介绍,本帖仅介绍如何 DIY 这个开关控件。


1 、先用形状绘制一个椭圆矩形框和圆圈,分别命名为 backshape 和 Button,准备一个单元格命名为 Switch,用户操作后的结果将记录在这个单元格。


2 、插入一个模块,编写如下的宏代码。



宏代码所执行的操作是:

如果状态是开,那么将状态置为 FALSE 关,将椭圆矩形框设置为灰色填充,文字为 OFF,右对齐,向左循环微移圆圈位置;

如果状态是关,那么将状态置为 TRUE 开,将椭圆拖延矩形框设置为绿色填充,文字为 ON,左对齐,向右循环微移圆圈位置;


这些代码其实我也不会写(不记得),是通过录制宏代码后修改得来的,关键是我们要有这个思路。其中 for 循环产生滑动开关的动画效果。


3 、给椭圆矩形框和圆圈都指定这个宏代码。

现在,测试点击开关,单元格 Switch 的值将在 TRUE 和FALSE 之间变化,这就相当于复选框控件了。


4 、根据数据源和这个开关结果,组织数据制作动态图表。

具体动态图表做法参见《让你的图表动起来》课程,不再细述。这里我们做的例子是打开开关后显示平均线,你可以有各种动态图表形式,如:



形状的格式化能力是无限的,有了这个思路和做法,所以你实际可以 DIY 出各种苹果风格的开关控件,比如:










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


推荐文章
Excel之家ExcelHome  ·  WPS表格中的几个实用功能
3 天前
Excel之家ExcelHome  ·  TEXT函数用处多,多干工作多背锅
3 天前
完美Excel  ·  可以在微信上使用deepseek了
3 天前
互联网新鲜事  ·  马云终于明白了,谁是朋友,谁是敌人
8 年前
佳木斯日报  ·  【节气】今日大寒
8 年前
宇宙解码  ·  人类至少还要在地球上住10亿年?
7 年前
笑的合不拢嘴  ·  女学生为借2000块钱,在车內当场...
7 年前