Colorir Caracteres Específicos com VBA

Colorir Caracteres Específicos com VBA

Antes de mais nada, você aprenderá como colorir caracteres específicos com VBA.

Sim, o fato de colorir caracteres específicos, se deve a colorir alguma letra ou número existente dentro de uma célula do Excel.

Veja abaixo, que temos o nome “Edson”:

Como Colorir Caracteres

Você saberia colorir a letra “s” desse nome, usando o VBA? Se alguém te pedisse para aplicar a cor vermelha na letra “s” usando o VBA, como você faria?

Pode até parecer complicado, porém, não é!

Logo a seguir ensinaremos o código mais simples, para realizar esse procedimento, tudo dentro do VBA.

Baixe a planilha para praticar o que foi ensinado neste tutorial:

Faça Download da planilha abaixo.

Autorizo a coleta e o tratamento dos meus dados para envio de material, inclusive publicidade, e adequação de minha experiência sobre produtos e/ou serviços da NINJA DO EXCEL, conforme informações prestadas AQUI


Como Colorir Caracteres Específicos com VBA

Primeiramente, na imagem abaixo temos a frase “Ninja do Excel”.

Mas, o que você acha de colorirmos a letra “X” do nome “Excel” ?

Como Colorir Caracteres, exemplo

Dentro do VBA boa parte das cores é reconhecida por códigos numéricos.

Além disso cada cor é representada por um número. Confira abaixo alguns códigos de cores da tabela de cores disponíveis:

Como Colorir Caracteres, tabela de cores
Tabela Índice de Cores

Iremos aplicar a cor 3 (Vermelha), na letra “X” do nome “Excel”.

Observação: talvez seja interessante você aprender também Como Criar e Deletar Módulo no VBA.

Copie e cole o código abaixo, dentro do VBA:

Sub Macro1()

ActiveCell.Characters(Start:=11, Length:=1).Font.ColorIndex = 3

End Sub

Veja o resultado:

Como Colorir Caracteres, código

Antes de confirmarmos esse código, precisamos entendê-lo:

  • Sub Macro1(): Inicialização do código, com o nome  “Macro1”. Pode ser qualquer nome de sua preferencia, desde que não contenha espaços;
  • ActiveCell: Célula ativa, se deve a célula que está sendo selecionada, no caso é a célula “B3” de onde a frase se encontra;
  • .Characters(Start:=11: Pega o décimo primeiro caractere, que é o “X”. Nesse caso ele está na posição “11”, contando todos os caracteres da frase, começando da esquerda para direita;
  • , Length:=1: Isso significa, que somente 1 caractere será selecionado ou pego, a partir da posição “11”;
  • .Font.ColorIndex = 3: Aplica uma cor de fonte, referente ao índice de cores da tabela que mostramos no início. Essa cor é = 3, cor vermelha. Essa cor, será aplicada na letra “X”;
  • End Sub: Finalização do código.

No entanto, resumindo nosso código em palavras ele fará:

Na célula selecionada ou ativa, olhe para o caractere da frase que está na posição 11, depois pegue somente 1 caractere começando dessa posição, logo após, aplique uma cor nesse caractere, que no caso é a cor 3 vermelha.

Pois bem, antes de confirmar esse código, certifique-se que a célula correspondente esteja selecionada.

Em seguida, pressione a tecla “F5” dentro do VBA, e confira o resultado:

curso de excel online

Vamos a outro teste, vamos colorir a letra “A”, na cor 5 azul:

  • ActiveCell.Characters(Start:=5, Length:=1).Font.ColorIndex = 5

Com base no trecho do código acima. A letra “A” é a quinta letra contando da esquerda para direita. E a cor azul é o número 5, de acordo com a tabela de cores.

Vejamos o resultado:

ninja do excel

O código consiste em escolher a posição da letra, escolher quantas letras a partir daquela posição serão coloridas, pela a cor correspondente a tabela.


Curso de Excel Completo: Do Básico ao Avançado.

Quer aprender Excel do Básico ao Avançado passando por Dashboards? Clique na imagem abaixo e saiba mais sobre este Curso de Excel Completo.

Curso de Excel Completo Ninja do Excel

Por fim, deixe seu comentário sobre o que achou de usar este recurso, e você também pode enviar a sua sugestão para os próximos posts. Até breve!

Artigos Relacionados Ao VBA: