Tratamento para excesso de espaço – TRIM
Tratamento para letras maiúsculas e minúsculas – LCASE e UCASE
Tratamento para quebrar letras – LEFT, MID, RIGHT
Tratamento para saber quantidade de letras – LEN
Tratamento para localização de um caractere – INSTR
Bonus – Quebrar texto a partir de um caracter qualquer
Vídeo do Post
Já vimos funções data e se você trabalha e/ou utiliza vba com certeza já precisou manipular textos ou um dia irá precisar e, portanto ótimo post para excelevba.com.br.
Eu usei esta afirmativa, pois é um dos trabalhos mais comuns ter que localizar algum caractere em uma palavra, ou verificar se uma palavra está com excesso de espaço ou ver a quantidade de caracteres que existe ou ainda separar uma palavra de um número ou nome de um sobrenome.
Claro, pois o vba é perfeito para essas situações! Trabalhar arrumando texto, linha por linha de uma tabela “gigante” é muito monótono, chato e suscetível a erros.
Então coloco abaixo as funções mais utilizadas bem como exemplos de como usar essas funções no vba: Lcase, ucase, trim, left, mid, right, len, instr
Vamos ver cada função abaixo:
Tratamento para excesso de espaço – TRIM
Casos de uso:
Em formulários de cadastro, onde o cliente necessita digitar nome e muitas vezes colocam espaço no inicio das palavras.
Exemplo de uso:
Range("a2").value = " João" variavelEspaço = Trim(range("A2").value)
ou seja
variavelEspaço agora possui a palavra “João” sem espaço
Tratamento para letras maiúsculas e minúsculas – LCASE e UCASE
Casos de uso:
O UCase você vai querer usar para transformar palavras ou frases todas em caracteres maiúsculos.
O LCase quando você precisar de todas as letras em minúsculo.
São muito usados para testes usando SE, para testar o que foi digitado e válido .Assim não é preciso usar o SE para frase toda maiúscula, toda minúscula e maiúscula só a primeira letra.
Exemplo de uso UCASE :
Range("b2").value = "empresa fictícia ltda" varMaiuscula = UCase(range("b2").value
resultado -> varMaisucula agora possui a frase: “EMPRESA FICTÍCIA LTDA”
Exemplo de uso LCASE:
Range("b2").value = "LápiS" varMinuscula = LCase(range("C2").value
resultado -> varMinuscula agora possui a palavra: “lápis”
Tratamento para quebrar letras – LEFT, MID, RIGHT
Casos de uso:
Quando é preciso separar alguns caracteres de uma palavra.
Talvez seja mais fácil ver o exemplo abaixo:
Exemplo de uso Left:
Range("a2").value = 112222-3333 varEsquerda = left(Range("a2").value,2)
ou seja
varEsquerda ->> 11
Exemplo de uso Right:
Range("a2").value = 112222-3333 varDireita = right(Range("a2").value,4)
ou seja
varEsquerda ->> 3333
Exemplo de uso Mid:
Range("a2").value = 112222-3333 varMeio = mid(Range("a2").value,3,4)
ou seja
varMeio ->> 2222
Tratamento para saber quantidade de letras – LEN
Casos de uso:
Muitas vezes precisamos saber a quantidade de caracteres existe em uma palavra.
Seja para validar um e-mail, senha.
Exemplo de uso:
Range("a2").value = mail@mail.com.br varQtde = len(range("A2").value)
resultado:
varQtde ->> 16
Tratamento para localização de um caracter – INSTR
Casos de uso:
Caso você precise saber onde está o caracter “@” e assim separar o nome do resto do e-mail. Existe vários outros casos: separar uma palavra que contenha “–“ (hífen) e etc
Exemplo de uso:
Range("a2").value = mail@mail.com.br varLocal = instr(1,range("A2").value,"@")
resultado:
varLocal ->> 5
Bônus – Quebrar um texto a partir de um caracter qualquer
O interessante é você usar as funções juntas, o INSTR com LEFT e etc.
Separar o domínio do e-mail ou separar o ano de uma data e etc.
varEmail = mail@mail.com.br arroba = instr(1, varEmail,"@") qtdeLetras = len(varEmail) nome = right(varEmail, qtdeLetras - arroba)
Segue vídeo do post