Muitas pessoas procura por uma função ou uma fórmula no Excel que seja capaz de extrair os primeiro e segundo nomes de uma celula:
Tiago Alves Nogueira de Souza = Tiago Souza
Pedro Américo Santos = Pedro Santos
Marcelo Ricardo Mendes = Marcelo Mendes
Júlia Arantes da Silva Miguel - Júlia Miguel
Ok, criamos uma funçãozinha para resolvermos esse problema (:
Não cheguei a testar, mas acredito que dê para conseguir esse resultado sem VBA. Entretanto, na busca da simplicidade a facilidade [vulgo, preguiça], preferi fazer direto no VBA mesmo. Só usei algumas funções simples, concatenar, esquerda, direita, ext.texto, essas coisinhas. Voce pode se perguntar: onde estão essas funções? Ah, o VBA só aceita em inglês. Left, right, mid, e assim vai. É uma excelente função para iniciantes quem estão aprendendo VBA agora.
Copie e cole o código abaixo num módulo novo no editor de VBA da planilha que vc deseja usar essa função. Não sabe como fazer?
Click aqui! e leia os primeiros parágrafos que veem explicando como.
Dps é só botar =nomes(Célula desejada) e pronto, funcionando! =D
abraços!!!
------------ Codigo ---------------
Public Function NOMES(NomeCompleto As Variant) 'cria uma funcao nova chamada NOMESDim x As VariantDim PrimeiroNome As VariantDim UltimoNome As Variant'##### --- Funcao de Excel Criada por Tiago Nogueira ------------------------ #####'##### --- Ao utilizar o codigo, por favor, deixar os créditos do autor ----- #####'##### --- Contatos: tiago.nt@hotmail.com, tiago.nogueiraa@hotmail.com ------ #####'##### --- Visite: http://officeti.blogspot.com/ para mais dicas de excel --- #####x = InStr(NomeCompleto, " ") 'procura o fim do primeiro nomex = x - 1PrimeiroNome = Left(NomeCompleto, x) ' cria o primeiro nomex = InStrRev(NomeCompleto, " ") 'procura o inicio do último nomex = xUltimoNome = Right(NomeCompleto, Len(NomeCompleto) - x) ' cria o ultimo nomeNOMES = PrimeiroNome & " " & UltimoNome 'Junta os nomesEnd Function