У меня есть список (около 1200) имен в MS Excel, которые находятся в нескольких разных форматах.
- Полные имена из 3 частей - например, Джон Мейнард Кейнс
- Полные имена из 4 частей - например: Мохомад Хуссейн Мохомад Нияс
- Имена с инициалами - например: С. Р. Уилсон, Джон
- Имена с приветствиями - например: мисс Т Анояни, мистер Тилан Кумара, мастер А.Х. Видушан
(Ага! Это беспорядок)
Мне нужно преобразовать его в формат ниже.
Дж. М. Кейнс
МХМ Нияс
SR Уилсон
А. Джон
Т. Аножани
Т. Кумара
А.Х. Видушан
Я пытался эти формулы, но не точный результат возвращается!
=LEFT(A1)& ". " & IF(ISNUMBER(FIND(" ",A1)),MID(A1,FIND(" ",A1)+1,1)," ") & ". " & IF(ISNUMBER(FIND(" ",A1)),MID(A1,FIND(" ",A1)+1,1)," ")& ". " & IF(ISNUMBER(FIND(" ",A1,FIND(" ",A1)+1)), RIGHT(A1,LEN(A1)-FIND("*",SUBSTITUTE(A1," ","*",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))))),"")
=LEFT(A2)&IF(ISNUMBER(FIND(" ",A2)),MID(A2,FIND(" ",A2)+1,1)," ")&IF(ISNUMBER(FIND(" ",A2,FIND(" ",A2)+1)),MID(A2,FIND(" ",A2,FIND(" ",A2)+1)+1,1)," ")
Я предполагаю, что первая формула сработает, если мне удастся проверить цикл между именами до тех пор, пока не будут пройдены все компоненты имени. Но не могу понять, как это сделать!