分享

Excel公式练习74: 将Y/N符号转换成星期几

 hercules028 2020-08-13

excelperfect

本次的练习是:如下图1所示,以Y/N的缩写形式表示一周中哪一天是工作日,哪一天休息,即Y表示那天是工作日,N表示那天休息,要求以简写的形式(即星期几的开头字母)输出一周中的工作日,如下图1中的结果列所示。

图1

一个有趣的练习!如何使用公式来计算结果?

先不看答案,自已动手试一试。

解决方案

有几种方法来实现。

方法1:使用IF/MID函数/连接符组合

在单元格D5中的公式为:

=IF(MID(B5,1,1)='Y','S','') &IF(MID(B5,2,1)='Y','M','') &IF(MID(B5,3,1)='Y','T','') &IF(MID(B5,4,1)='Y','W','') & IF(MID(B5,5,1)='Y','T','')& IF(MID(B5,6,1)='Y','F','') &IF(MID(B5,7,1)='Y','S','')

下拉至单元格D9。结果如下图2所示。

图2

方法2:使用TEXTJOIN/MID函数组合

在单元格D5中的公式为:

=TEXTJOIN('',TRUE,IF(MID(B5,{1,2,3,4,5,6,7},1)='N','',{'S','M','T','W','T','F','S'}))

下拉至单元格D9,结果如下图3所示。

图3

方法3:使用TEXTJOIN/MID/REPT函数组合

在单元格D5中的公式为:

=TEXTJOIN('',TRUE,REPT({'S','M','T','W','T','F','S'},MID(B5,{1,2,3,4,5,6,7},1)='Y'))

下拉至单元格D9,结果如下图4所示。

图4

公式中,MID函数会对每个值返回TRUE或FALSE,而REPT函数将TRUE/FALSE转换为1/0。

小结:

1. MID函数中使用数组参数来判断多个值。

2. 公式中有多个相似的部分,可以考虑使用数组公式来解决。

注:本次的练习整理自exceljet.net,练练手!

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

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多