今天天气真好 请进,excel如何处理英文名字

来源:百度知道 编辑:UC知道 时间:2024/06/15 22:47:03
Gregoor Van Dijk
Edwin van der Sar
Francis Dickoh
S.Esposito
Wellington
Tomas Danilevičius

以上是一些英文人名,我希望将后面的family name大写,情况有些不同,比如第一行和第二行分别要得到Van Dijk 和van der Sar 就是把第一个名字去掉,下面的也类似,第三个是正常的,第四个是用英文点号.隔开的,我就需要得到Esposito

我希望将得到的部分英文名字处于同一列内,,基本的分列好像得不到这样的效果,以为有些名字是三个或者更多部分组成的。另外我需要将这些名字改成大写,第五行有个特殊情况就是只有一个名字,不用去了,第六个有非英文字母Danilevičius 替换大写的时候我希望将其中的č大写成C
补充一下我想得到的结果是:
VAN DIJK
VAN DER SAR
DICKOH
ESPOSITO
WELLINGTON
DANILEVICIUS

以上都在同一列里

假如数据在N列
公式:=UPPER(MID(N1,IF(ISERROR(FIND(" ",N1,1)),1,FIND(" ",N1,1)+1),IF(ISERROR(FIND(" ",N1,1)),LEN(N1),LEN(N1)-1)))

假设你的姓都在B列,Van Dijk在B1的话,你在C1输入公式:=UPPER(B1)就可以得到你想要的结果。

=IF(ISNUMBER(FIND(" ",A28)),UPPER(REPLACE(ASC(A28),1,FIND(" ",A28),)),IF(ISNUMBER(FIND(".",ASC(A28))),UPPER(REPLACE(ASC(A28),1,FIND(".",A28),)),UPPER(ASC(A28))))
引用根据实际替换吧

=SUBSTITUTE(UPPER(MID(A1,IF(ISNUMBER(FIND(" ",SUBSTITUTE(A1,"."," "))),FIND(" ",SUBSTITUTE(A1,"."," "))+1,1),LEN(A1))),"Č","C")

假设数据在A列
B1输入

=UPPER(IF(ISERR(FIND(" ",SUBSTITUTE(A1,"."," "))),A1,MID(A1,FIND(" ",SUBSTITUTE(A1,"."," "))+1,999)))

PS:那个特殊字符我复制到excel中显示的是“?”所以不知道如何处理。