清华学弟函数攻略:一文讲透单元格格式(上)
创作者俱乐部成员
困难如山,我有金山。
大家好,欢迎收看本期函数攻略,我是学弟。
今天有小伙伴打开“设置单元格格式”,“手抖”翻到了“自定义”模块,直接给他干一个开幕雷击:
这都是个啥!
其实,大多数伙伴,使用“单元格格式”,最最常用的两种格式分别是:默认保留两位有效数字的数值,以及默认保留两位有效数字的百分比。其次就是一些财务口人士用到的“货币符号¥”。还有显示不同日期、时间的相应格式:
其实,这里面所有的默认格式,或者每个选项卡中可供调节的格式,在“自定义”选项卡里面都可以设定,只要你懂它的代码。于是就返回了本帖子开头的问题。看起来太复杂了!
今天学弟就用1份教程,分3个篇章,完整讲述自定义单元格格式,教会大家实现所有你想要的效果。教程提纲:
(上)集:自定义单元格格式的本质、日期/时间自定义格式
(中)集:数值自定义格式
(下)集:文本自定义格式、再探自定义单元格格式的本质
****(分割线)****
自定义单元格格式的本质,是一个“表面看起来”的效果,它不会影响到单元格值的本体。
这句话大家一定要记住。
比如,一个1 一个0.98 一个1.126,当我们都设置为保留0位小数位数的数值格式以后,都会显示成“1”,但只是看起来像1!我们在上面的编辑栏中还是可以看到它实际的值(如下图)
再比如,2021、2022、2023年的3月5日,当我默认日期格式为m"月"d"日"时,看起来是一样的,但也只是看起来一样!我们在上面的编辑栏中还是可以看到它实际的值(如下图)
因此,当我们想显示某产品单价为XX“元”时,如果直接写在数值的后面,就会影响后面的计算,因为无法识别文本(这一点很多不规范的制表中都有这个问题)。所以我们可以充分借助“自定义格式”,在数值后面让它“看起来”加了一个“元”,实际上不破坏元单元格的数值属性(如下图)
下面我们来看一下日期和时间自定义格式的写法:
我们需要了解年、月、日、时、分、秒的代码:
年y(year)、月m(month)、日d(day)、时h(hour)、分m(minute)、秒s(second)
都是取自于英语单词的首字母。
比如:我们用NOW()函数生成一下此刻的时间,我们可以看到,它默认是年月日时分的格式,格式代码为(yyyy/m/d h:mm),这个代码就是在这里用的哈。
如果我们想显示秒,那么我们就在自定义格式代码中加入s代码:
yyyy/m/d h:mm:ss
有的小伙伴要问了,为什么m d h默认是1位,而mm和ss要输入成2位?
这是一个好问题,而且这就是本节课的难点,一旦你理解了,这个事就超级简单:
首先,大家要知道,在WPS表格中,年月日时分秒有几种表示方法:
年:
2023、23,只有两种形式
因此,我们想简写23年,标准的输入方式就是yy,当然你输入y也行,但不能输入yyy,位数超了,总之,不能超过两位数;
我们想写全称2023年,标准的输入方式是yyyy,当然你输入yyy也行,也可以输入yyyyy,也可以输入yyyyyyyyyyyyy,结果都是一样的。
月:
月的情况稍微复杂一些,理解了这个,后面都好弄了。
小于10的,比如1月,有1、01、Jan、January、J 5种形式,
想要显示1,则输入m;
想要显示01,则输入mm;
想要显示Jan,则输入mmm;
想要显示January,则输入mmmm;
想要显示J,则输入mmmmm或更多位数,结果都是一样的
10月及以上的,比如12月,有12、Dec、December、D 4种形式,
想要显示10,输入m或mm都行;
想要显示Dec,则输入mmm;
想要显示December,则输入mmmm
想要显示D,则输入mmmmm或更多位数,结果都是一样的
综上,一般来说,在中国企业中,常用的表述方式是2023年5月3日,或者2023年05年03日,前者可以写作yyyy/m/d,后者可以写作yyyy/mm/dd。
前者在遇到两位数的月和日时,会自动扩充为两位,无需手动改成mm dd;
后者则会用0占位,保持所有的日期格式是一样长的。
日:
和月基本相同,分为小于10日的,和10日及以上的。
比如2日,除了2、02两种表示手段以外,当你输入
"ddd",会显示Sat(2日对应的星期);
"dddd"及更多位数的d,会显示Saturday(2日对应的星期)
对,输入一堆d,也不会显示S,因为和月不同,日没有“S”这种显示方式。
时:
和月日一样,小于10点,只有两种表述形式:9点(h)和09点(hh)
大于等于10点,只有一种表述形式:11点(h hh都是一样的)
因此,就看大家的需求,是否要求位数“全相等”,来选择h还是hh
分、秒:
和前面规则一样,可以自定m还是mm、s还是ss
但一般来说,分和秒从阅读习惯来说,大家普遍接受了两位数,因此,用mm和ss的情况比较多见。
此外,还有ss.0的写法,表示0.几秒。属于数值和时间的混排啦。
从代码分组来说,你想要哪个分组,就写哪个分组即可。
可以缺编组!
可以重复写!
可以不按顺序写!
可以换连接符写!
让我们练习一下:
假定现在是2023年4月3日星期一,9时2分34秒。
yyyy-mm-dd hh:mm:ss
2023-04-03 09:02:34
yy/m/d h:mm:ss
23/4/3 9:02:34
dd-mmm-yy
03-Apr-23
h"时"mm"分"ss"秒"
9时02分34秒
mmmmm-yy
A-23
在时间版块里面,还有两类特殊的显示方式:
①上午/下午 或者 AM/PM 代码
②[DBnum+数字] 代码,其中“+数字”可以写1~9
1 小写汉字 一二三
2 大写汉字 壹贰叁
3 全角数字 1 2 3
4 大写罗马数字 I II III
5 小写罗马数字i ii iii
6 大写字母0-A 1-B 2-C……9-J以此类推
7 小写字母0-a 1-b 2-c……9-j 以此类推
8、9 神奇代码,学弟没看懂,但是能设置,哈哈
在日期板块里,还有一个a代码,可以返回对应的星期:
aaa,显示“一”
aaaa,显示“星期一”
大家都会了吗?可以自行去WPS表格里尝试一下!
💡最后,学弟强调几个事:
WPS表格中,只识别年月日时分秒,X月X号、Y点Y分这种不规范的称呼,不能识别!使用年月日时分秒作为自定义格式时,需要加上双引号"年";
在日期表达式中,合法的连接符有3种,“年月日”、英文“/”、英文“-”;大家经常用的“.”是不规范的,手工录入的2023.10.14不能被有效识别,但可以用yyyy.m.d展示出“2023.10.14”的效果,但是学弟不建议大家这么做!
在时间的表达式中,合法的连接符有2种,“时分秒”、英文“:” 。建议大家使用国际标准的表达方式,便于识读,也便于协作!
如果你觉得今天的教程对你有帮助,欢迎在下方为我点一颗小红心💖💖💖哦!
同时,你也可以将感悟或者收获在下方留言,或者在评论区留下你的困惑,我会挑选有代表性的问题,推出更多的教程跟大家分享哦!
欢迎大家阅读我的其他文章:
✅【函数攻略】系列
✅【动态数组灰度测试】系列
动态数组行业案例:使用SEQUENCE/FILTER函数 × 动态数组 搞定三大高频场景
动态数组行业案例:使用SORTBY函数 × 动态数组 制作多功能成绩单
动态数组行业案例:使用UNIQUE函数 × 动态数组 多场景全能应用
动态数组行业案例:使用SEQUENCE函数 × 动态数组 生成动态序号
动态数组行业案例:使用XLOOKUP函数 × 动态数组 实现金牌查找(上)
动态数组行业案例:使用XLOOKUP函数 × 动态数组 实现金牌查找(下)
动态数组行业案例:使用RANDARRAY函数 × 动态数组 解决授课案例问题
动态数组行业案例:使用INDIRECT函数 × 动态数组制作二级下拉菜单
动态数组行业案例:使用TEXTJOIN函数 × 动态数组将字符串中的数字和汉字分开
✅【WPS AI办公】系列
✅【菁培班-函高一期PK赛】系列
✅【学习感悟】系列
WPS函数专家