Suponho que você importou o arquivo CSV e a lista de nomes está na coluna A.
Esta fórmula cria uma coluna "auxiliar" contendo a posição da última letra do primeiro nome:
=MATCH(1,(CODE(MID(A2,ROW(A$1:A$50),1))>96)*(CODE(MID(A2,ROW(A$1:A$50),1))<123),0)-3
É uma fórmula de matriz e deve ser digitada com CTRL Deslocar Enter em vez de apenas Enter . Se inserida corretamente, a fórmula será cercada por chaves na barra de fórmulas. Esta fórmula foi preenchida de B2 na tabela abaixo.
Comofunciona:MID()
criaumamatrizdetodasasletrasdonome(até50letras).ROW()
éusadoparagerarumalistadenúmerosde1a50.Portanto,sealgumdeseusnomespudersermaiorquede50caracteres,vocêdeveráaumentarotermoA$50
conformenecessário./p>
CODE()
converteamatrizdeletrasemseuscódigosASCII.Ascomparações>96
e<123
verificamletrasmaiúsculasASCII,enquantoconvertemasmatrizesemvaloresTrue/FalsecomTrueparaqualquerletraminúscula.
Amultiplicaçãorealizaoequivalenteaum%lógicoAND()
econverteosvaloresTrue/Falseem1e0.Finalmente,MATCH()
encontraaposiçãodoprimeiro1nessamatriz,queéaposiçãodaprimeiraletraminúsculanonome.Asubtração3identificaaúltimaletradoprimeironome.
Agora,usandoacolunaauxiliar,ossobrenomespodemserlistadosnacolunaCcom:
=PROPER(LEFT(A2,B2))
IssopegaapartemaiúsculadacolunaAeaconvertenoqueoExcelchamadecaso"apropriado", o que parece ser o mesmo que o caso "camel".
Os primeiros nomes são listados na coluna D com:
=RIGHT(A2,LEN(A2)-B2-1)