Обрезать от среднего имени до среднего начального - PullRequest
0 голосов
/ 31 октября 2018

Я хочу изменить формат имени, используя формулу TRIM. В настоящее время у меня есть Последняя, ​​первая средняя

Люди без отчества просто отображаются как В прошлом первый Эти имена могут оставаться как есть, но формулу необходимо отформатировать, чтобы эти имена не редактировались.

Я хотел бы урезать это до Последний, Первый М

Заранее спасибо.

В настоящее время я обнаружил следующее, но у меня возникли проблемы с обратным проектированием формулы.

=TRIM(MID(SUBSTITUTE(B2," ",REPT(" ",LEN(B2))),LEN(B2),LEN(B2))&" "&LEFT(B2,FIND(",",B2)-1))

1 Ответ

0 голосов
/ 31 октября 2018

Вы можете использовать следующее, предполагая одиночные пробелы. Если больше одного пробела, вам нужно заменить его на один пробел.

=LEFT(B2,FIND(" ",B2,FIND(",",B2)+2)+1)

Больше, чем один пробел:

= LEFT(TRIM(SUBSTITUTE(B2,CHAR(32)," ")),FIND(" ",TRIM(SUBSTITUTE(B2,CHAR(32)," ")),FIND(",",TRIM(SUBSTITUTE(B2,CHAR(32)," "))  )+2)+1)

Если нет второго имени, возможно, просто обернуть в IFERROR

=IFERROR( LEFT(TRIM(SUBSTITUTE(B2,CHAR(32)," ")),FIND(" ",TRIM(SUBSTITUTE(B2,CHAR(32)," ")),FIND(",",TRIM(SUBSTITUTE(B2,CHAR(32)," "))  )+2)+1),TRIM(SUBSTITUTE(B2,CHAR(32)," ")))
...