这个技巧耍得好,人见人爱有礼貌

文摘   2024-11-04 20:01   上海  




欢迎转发和点一下“看”,文末留言互动!

置顶公众号或设为星标及时接收更新不迷路





小伙伴们好,今天带给大家的是一道简单的文本题目。题目非常简单,所涉及到的函数都是我们日常常用的小函数。题目如下:




题目要求我们按照性别给A列中的姓名更换称谓。这个过程非常简单,唯一需要考虑的就是如何处理复姓的问题。


01

解题的关键是如何处理复姓





在单元格E2中输入下列公式,并向下拖曳即可。

=LEFT(A2,IF(OR(1-ISERR(FIND({"欧阳","西门"},A2))),2,1))&IF(B2="女","女士","先生")

这条公式分为两部分。第一部分提取姓氏,第二部分按性别添加称谓后缀。但如何提取姓氏,需要稍微考虑一下。

FIND({"欧阳","西门"},A2)

首先我们在目标单元格中查找是否存在“欧阳”和“西门”这两个复姓。如果存在,就返回一个具体的数字,否则就返回错误值。

以单元格A2为例,这部分的结果是{#VALUE!,#VALUE!}

ISERR(FIND({"欧阳","西门"},A2))

利用ISERR函数将错误值转换为TRUE,将数字转换为FALSE。这部分的结果是{TRUE,TRUE}

1-ISERR(FIND({"欧阳","西门"},A2))

我们希望当FIND函数找不到复姓时返回FALSE,因此用1减去ISERR。这部分的结果是{0,0}

OR(1-ISERR(FIND({"欧阳","西门"},A2)))

利用OR函数返回逻辑值FALSE,表明在单元格A2中没有找到任何复姓。

根据OR函数的特点我们可知,当找到任意一个复姓时,OR函数将会返回TRUE

这里我们可以使用AND函数来替代OR函数。当使用AND函数时,可以省略1-ISERR这个步骤了。

IF(OR(1-ISERR(FIND({"欧阳","西门"},A2))),2,1)

利用IF函数根据OR函数的结果来返回数字“1”或者“2”。

LEFT(A2,IF(OR(1-ISERR(FIND({"欧阳","西门"},A2))),2,1))

接下来利用LEFT函数提取姓氏。

IF(B2="女","女士","先生")

而这一部分则是根据性别来添加称谓后缀。

LEFT(A2,IF(OR(1-ISERR(FIND({"欧阳","西门"},A2))),2,1))&IF(B2="女","女士","先生")

最后两部分合在一起就可以了。



本期内容练习文件提取方式:

链接: https://pan.baidu.com/s/1oyl2X2nhjNMQUv4Asxv36g?pwd=g8u4 

提取码: g8u4 


好了朋友们,今天和大家分享的内容就是这些了!喜欢我的文章请分享、转发、点赞和收藏吧!如有任何问题可以随时私信我哦!


-END-


长按下方二维码关注EXCEL应用之家

面对EXCEL操作问题时不再迷茫无助


我就知道你“在看”


推荐阅读

Excel应用之家
介绍、交流EXCEL各项功能在工作中的实际应用; 为你答疑解惑;分享各类图表、表格和模板;提供有偿代工服务。
 最新文章