分享

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

 我的人生宝库 2020-02-20

言归正传,下面请看演示效果(演示中有删除单元格内容的操作,是为说明单元格中没有内容):

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

条件格式制作的LED时钟

首先我说下原理:用excel的单元格组成数字的样式,然后通过条件格式,设置相应单元格填充颜色的规则,通过改变单元格的颜色,再添加两句控制时间更新的VBA代码,就可以根据当前时间显示出不同的数字,实现了上图的效果。


下面,我们开始讲解制作过程,制作步骤如下:

设计时钟的尺寸:

一个数字分为7笔(见下图,上中下三横、上口和下口的左右各两竖),每笔占三个单元格位置(即三个单位长度,一个单位宽度)。纵向就一共需要9个单元格;单个字横向需要5个单元格,分隔的冒号需要占2个单元格,数值与数值之间的间隔要占一个单元格,共需要5×6+2+7=39个单元格。再加上最外面一圈边框,整个LED时钟,横向需要41个单元格,纵向需要11个单元格。

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

数字的笔画拆分(共7笔)

调整单元格:

数字的每笔的每个单元格,都要求是正方形的,但是在常规的列宽、行高设置中,都只能按像素来设置,且行和列的像素是不一样的。我们可以用下面的方法来设置:切换到页面布局视图→从B列开始选择41列【B列至AP列】→设置列宽【0.16cm】→从第2列开始选择11列【2至12列】→设置行高【0.16cm】→完成。具体操作见下图:

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

设置单元格行高列宽【0.16cm】

填充颜色,制作出时钟的数值效果

要填充两种颜色:①时钟LED显示板底色——黑色;②时钟数值颜色——浅色。下面看我的操作演示:

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

单元格填充颜色

整理条件格式规则

根据每个数字的特点,整理出显示0时哪些笔画填充颜色;显示1时哪些笔画填充颜色;显示2时哪些笔画填充颜色……显示9时哪些笔画填充颜色。然后整理成一个表(见下图):

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

整理结果

获取时间,并根据整理结果,设置条件格式

一、获取时间(这个就不做动画演示了):

在A1单元格记录当前系统时间,然后通过定义名称的形式,定义为时间:时间=TEXT(A1,'hhmmss')

然后义六个名称,依次为(Mid函数前面加了2个减号,是为了将文本数字转换为数值):

①时2=--MID(时间,1,1);②时1=--MID(时间,2,1);

③分2=--MID(时间,3,1);④分1=--MID(时间,4,1);

⑤秒2=--MID(时间,5,1);⑥秒1=--MID(时间,6,1);


由于每个数字位置,都要显示0到9的所有数字,我们就根据上面表格的特点按笔画设置条件格式,举个实例:

笔画【上】:显示1、4的时候不着色,显示其余数字时均着高亮色;

笔画【中】:显示0、1、7的时候不着色,显示其余数字时均着高亮色;

笔画【下】:显示1、4、7的时候不着色,显示其余数字时均着高亮色;

笔画【左上】:显示1、2、3、7的时候不着色,显示其余数字时均着高亮色;

笔画【右上】:显示5、6的时候不着色,显示其余数字时均着高亮色;

笔画【左下】:显示1、3、4、5、7、9的时候不着色,显示其余数字时均着高亮色;

笔画【右下】:显示2的时候不着色,显示其余数字时均着高亮色;

【分隔的冒号】:每秒跳一次,可以设置秒数为双时是着高亮色,为单时不着色;

下面请看操作动画演示(操作动画只录制设置一个字的过程,其余的均按这个重复操作即可):

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

设置条件格式

通过VBA代码设置时间自动更新

代码如下:

Sub 开始() '宏1

Application.ScreenUpdating = False '禁止屏幕自动更新

ThisWorkbook.ActiveSheet.Range('A1') = Time '活动工作表A1等于系统时间

Application.OnTime Now + TimeValue('00:00:01'), '开始' '每隔一秒在A1单元格中加上1秒

End Sub


Sub 停止() '宏2

Application.ScreenUpdating = False

On Error Resume Next

Application.OnTime Now + TimeValue('00:00:01'), '开始', , False

End Sub


然后在工作表中,添加两个按钮,一个指定为开始,一个指定为停止。

好玩的LED时钟,还是用条件格式制作的,你觉得好看吗?

设置VBA代码,完成制作


知识点回顾:

1、按厘米设置列宽、行高,可通过页面布局视图实现;

2、MID为文本函数,其结果为文本格式,可在MID前面添加两个减号,将文本转换为数值(负负得正);

3、判断奇数偶数用MOD函数:MOD(数值,2)=0,则数值为偶数;

4、通过AND或者OR逻辑函数,多条件判断;

5、条件格式设置。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多