You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中实现4个姓名的姓氏前置格式转换

Google Sheets 多姓名格式转换公式(支持2-4个姓名)

需求说明

需要将姓名格式调整为「姓氏, 名字及后续名字」的形式,原公式已支持2个(如John Smith→Smith, John)和3个(如John Doe Smith→Smith, John Doe)姓名的转换,现需适配4个姓名的场景(如John Michael Doe Smith→Smith, John Michael Doe)。

适配后的公式

=MID(TRIM(A2)&", "&TRIM(A2), IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))=3, FIND(" ",TRIM(A2),FIND(" ",TRIM(A2),FIND(" ",TRIM(A2))+1)+1)+1, IF(LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))=1, FIND(" ",TRIM(A2))+1, FIND(" ",TRIM(A2),FIND(" ",TRIM(A2))+1)+1)), LEN(TRIM(A2))+1)

公式逻辑说明

  • 清除冗余空格:TRIM(A2)清除姓名前后的空格,避免空格数量判断出错。
  • 判断姓名组成个数:通过LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))计算姓名中的空格数:
    • 空格数=1 → 2个姓名,取第一个空格后的内容作为姓氏,前面的作为名字
    • 空格数=2 → 3个姓名,取第二个空格后的内容作为姓氏,前面的作为名字
    • 空格数=3 → 4个姓名,取第三个空格后的内容作为姓氏,前面的作为名字
  • 截取并拼接格式:通过MID函数从拼接后的字符串(原姓名+", "+原姓名)中精准截取目标内容,输出「姓氏, 名字及后续名字」的格式。

验证示例

  • 输入John Smith → 输出Smith, John
  • 输入John Doe Smith → 输出Smith, John Doe
  • 输入John Michael Doe Smith → 输出Smith, John Michael Doe

内容的提问来源于stack exchange,提问作者Jett Vincent Sia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 05:30:43