excel 下拉框选择月份显示不同的日历_Excel教程:日志管理不要慌,Excel套表帮你忙...

本文通过Excel教程教你如何制作一个套表,用于管理工作日程。套表包括根据年份和月份自动变化的日历,非当前月份日期显示为浅灰色,当天日期显示为橘底白字,点击日期变色,并在右侧动态显示日志。通过日历制作、条件格式设定和动态显示日志三部分详细讲解制作过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

5eaee01cb926a3c5eb194bcbaf0c9eea.png

3eca2fa2645ad97b7fcc80fa2a6ab209.gif

助力不平凡的你,越努力越幸运

特推超级会员限时疯狂抢购

点击了解

支持微信公众号+小程序+APP+PC网站多平台学

ee5159968fd49ccc9f72358505a34ad6.png

雨夜被领导安排的事情,越来越多,经常性的一会忙这个一会忙那个,结果什么都没做好

领导很生气,雨夜就很难过

大鹅看了太不忍心了,我们帮帮她,就用Excel给她定制一个套表,专门管理她的工作

先看看我们完成的效果:

b341cc04edc1b1b8ff345757b82ecf26.gif

1, 根据年份和日期,自动变化日历

2, 动态把不是本月的日期,变成浅灰色

3, 当天日期,自动变成橘底白字

4, 鼠标点击日期,变成灰色

5, 鼠标点中日期,右侧动态显示当天的日志

我们通过,日历制作,条件格式设定,动态显示指定日期日志,三部分来给大家讲解,这个套表的制作

01

日历制作

▍准备空白格式开始

929c44625d01ecddea1f9b5f0d211040.png

我们在B3单元格写入公式:

=DATE($C$1,$F$1,1)-WEEKDAY(DATE($C$1,$F$1,1),2)+1

分析函数:

DATE($C$1,$F$1,1)  表示自己设定的年份,月份,第一天,这里是2020年3月1日

WEEKDAY(DATE($C$1,$F$1,1),2)  表示2020年3月1日是周几,周一就返回1,周二返回2,以此类推,周日返回7

整体DATE($C$1,$F$1,1)-WEEKDAY(DATE($C$1,$F$1,1),2)+1

就表示,每个月开始的时候周一是什么日期

▍设置日期格式-自定义格式-dd,只显示两位数日期就好了

06d7e95dd8b0926b4c4d340d68882366.gif

▍然后简单设置,其他单元格日期公式

a254e3fc19361ae6dd05f3891ab2dd2d.gif

▍设置控件,点击按钮调整月份和年份

右键开始选显卡,勾选开发工具选项卡,确认

42eea676d9ad6ea4fd2d950fd910b749.gif

插入控件,并做对应设置

8c77d0f993ce76a98d93f4975b674ab4.gif

月份同样设置,最小值1,最大值12,步长1,连接单元格地址:F1

看看最后日历效果,非常不错~

36a95ffa638bfe8ea0c6a02d5762f9d4.gif

02

条件格式设置

我们现在显示日期效果还是不满意,不是当前月份的日期,也混在表头和表尾,非常影响观看

▍设置条件格式,让非本月日期变浅色

8d1af3647ef5c1dc07ca2caf2c4cadaa.gif

这里条件格式,写入公式:=MONTH(B3)<>$F$1

表示单元格月份不等于F1单元格设定月份的时候,就执行条件格式,字体变灰色

这里注意,单元格的锁定,B3表示范围内的反白色单元格地址,不锁定,F1是绝对锁定,特别注意

▍设置条件格式,让当天日期显示橘色底白色字体

3d2ddb2fe059a3a826f80e1e0f5368b5.gif

这里条件格式,写入公式:=B3=TODAY()

表示判断单元格是不是等于今天日期,是就执行条件格式

▍设置条件格式,让点击日期变色

这个部分,就稍微要用一点VBA代码,大家不理解的,没关系,直接按照操作复制进去就好了

Private Sub Worksheet_SelectionChange(ByVal Target As Range)   '容错代码,多选不报错   If Target.Rows.Count > 1 Then Exit Sub   If Target.Columns.Count > 1 Then Exit Sub   '范围只能是B4:H9单元格,超出无效果   If Application.Intersect(Range("b4:h9"), Target) Is Nothing Then _   Exit Sub   '在H1单元格写入点击单元格的日期   Range("h1") = Format(Target.Value, "yyyy/m/d")End Sub


按照下图操作,把代码复制进去要操作工作表里

d8268c51cc914f971b346e44a0333b85.gif

这个操作就是在H1单元格做为辅助单元格,显示鼠标点击日期

然后,把H1单元格设置成白色字体,起到隐藏的作用

设置条件格式,点击操作变浅灰色

0cd819a141d5e7e2b0b79d9d9057c4d9.gif

03

动态显示指定日期日志

▍填写日志表格,一些设定心思

ac1d611235743268e8287983f20da447.gif

先按照上图,把做好的格式,做成超级表,要利用超级表自动填充公式的功能,做辅助列

提示:WPS用户,超级表功能可能会出现,不自动变公式,不自动填充范围等问题

▍辅助列,公式

思路就是想让辅助列,根据另外一个表H1单元格日期,动态显示1,2,3连续不重复序号

D2单元格写入:=IF([@日期]=可视化!$H$1,MAX($D$1:D1)+1,"")

注意max函数里面范围的锁定情况,范围其实就是写入公式单元格上面范围最

找到日期列里等于H1单元格日期,D列最大日期,加1,就是接着编序号

daafc973e4ce7b1209dc47667e10043b.gif

▍可视化表格的动态显示函数

思路就是根据,上面做的辅助列,返回对应序号显示的内容

J2单元格里,输入公式:

=IFERROR(INDEX(记录!A:A,MATCH(ROW(A1),记录!$D:$D,0)),"")

MATCH(ROW(A1),记录!$D:$D,0)  

根据往下拉,ROW不断返回1,2,3等数字,match函数提取对应1,在D列的行号

INDEX(记录!A:A,MATCH(ROW(A1),记录!$D:$D,0))

这个在记录A列,里返回对应行号的数据,就是日期了

不断右拉和下拉,就能得到全部数据

最后,用IFERROR把找不到的时候显示错误,改为显示空

a51d9282e971c7e9556ba0733abfbee0.gif

上面为简单的分享,其实我们还可以通过VBA代码,来实现直接在可视化表格,直接输入日志的操作,并且可以增加完成没完成设置等等,更为深入的应用

如果同学们有更多,更好的创意,欢迎大家下面留言

今天的分享就到这,如果教程对大家有用,希望大家多多分享点赞支持小编哦!你的每一次点赞和转发都是支持小篇坚持原创的动力。

推荐学习★★★★★

Excel教程:吐血整理,70个精选实用Excel技巧(↶点击学习)

Excel教程:100篇精华原创教程汇集!收藏慢慢学(点击学习)


好消息IOS APP发布啦

终于支持安桌和苹果啦

请扫码下载O(∩_∩)O哈哈~

638f5b4227a367fd22f6ab12602ec989.gif

 19e6bd7be09308786bc11aaabe630e20.gif

Excel学习交流群Q群:582326909 欢迎加入

(群共享,配套练习课件,提供答疑)

38ea057422698840dcd1d2919590dae3.png 

推荐Office学习关注

(PPT WORD EXCEL)

2860ac86e51008384331c5555edc2019.pnge3dfe24215314e7a7ab9550060419a4b.png107464dfc785ab23cd92bd3849f64781.png

d5df4fe5c6f0389fb853f5aeabe38751.png

4b8cdbeba2b8bfeb09e955f70965beb6.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值