Funções para tratamento de Texto no VBA (Asc, Chr, Len, LCase, UCase, Left, Right e Mid)

Oi Pessoal!

Dando continuidade ao aprendizado de VBA, neste post falarei de algumas Funções usadas para tratamento de texto.

 

A Função Asc

 

Esta Função retorna o valor numérico do código ASCII da primeira letra de uma String.

Obs: ASCII é uma sigla para “American Standard Code for Information Interchange” (Código Padrão Norte-americado para Intercâmbio de Informações). Esse código foi criado visando a padronização dos códigos para caracteres alfa-numéricos (letras, sinais, números e acentos).
O ASCII é um código numérico que representa os caracteres, usando uma escala decimal de 0 a 127, que são convertidos pelo computador para binários.

Exemplo de código:

Sub Função_Asc()

MsgBox Asc(“Curso de VBA”)

End Sub

 

Ao ser executado, o código acima mostrará uma caixa de mensagem com o valor 67 como resultado.

A Função Chr

Esta Função retorna o caractere ASCII associado ao número informado como parâmetro.

Exemplo de código:

 

Sub Função_Chr()

MsgBox Chr(65)

End Sub

 

Ao ser executado, o código acima mostrará uma caixa de mensagem com a letra A como resultado.

Obs: usamos o Chr(13) para simular o comando <ENTER>, que efetua a quebra de linhas no código.

 

A Função Len

 

Esta Função determina o tamanho da String (quantidade de caracteres) informada como parâmetro, considerando inclusive os espaços em branco.

Exemplo de código:

Sub Função_Len()

MsgBox Len(“Curso de VBA”)

End Sub

Ao ser executado, o código acima retornará uma caixa de mensagem com o valor 12, que corresponde ao número de caracteres do texto entre parênteses: Curso de VBA.

 

Obs: conforme falei acima, repare que cada “espaço” conta como um caractere!

 

A Função LCase

Esta Função converte as letras de uma String para minúsculas.

Exemplo de código:

Sub Função_LCase()

MsgBox LCase(“Curso de VBA”)

End Sub

Ao ser executado, o código acima mostrará uma caixa de mensagem com o seguinte resultado: curso de vba

Função UCase

 

Esta Função converte as letras de uma String para maiúsculas.

Exemplo de código:

Sub Função_UCase()

MsgBox UCase(“Curso de VBA”)

End Sub

Ao ser executado, o código acima mostrará uma caixa de mensagem com o seguinte resultado: CURSO DE VBA

A Função Left

 

Esta Função retorna todos os caracteres de uma String, iniciando pela esquerda e considerando os espaços em branco, até uma determinada posição. A sintaxe é a seguinte: Left(String, n), onde n determina a posição do último caractere que deve aparecer no resultado.

Exemplo de código:

Sub Função_Left()

MsgBox Left(“Curso de VBA”, 5)

End Sub

Ao ser executado, o código acima mostrará uma caixa de mensagem com o seguinte resultado: Curso

A Função Right

 

Esta Função retorna todos os caracteres de uma String, iniciando pela direita e considerando os espaços em branco, até uma determinada posição. A sintaxe é a seguinte: Right(String, n), onde n determina a posição do último caractere que deve aparecer no resultado.

Exemplo de código:

Sub Função_Right()

MsgBox Right(“Curso de VBA”, 3)

End Sub

 

Ao ser executado, o código acima mostrará uma caixa de mensagem com o seguinte resultado: VBA

A Função Mid

 

Esta Função retorna todos os caracteres de uma String, iniciando e terminando em posições informadas. A sintaxe é a seguinte: Mid(String, m, n), onde m determina a posição do primeiro caractere que deve aparecer no resultado e n a posição do último.

Exemplo de código:

Sub Função_Mid()

MsgBox Mid(“Curso de VBA”,6, 3)

End Sub

 

Ao ser executado, o código acima mostrará uma caixa de mensagem com o seguinte resultado: de

Abs, Dr. E

P.S. Gostaria de pedir desculpas, mas infelizmente não estou conseguindo responder todos os e-mails com dúvidas que venho recebendo. Por isso, peço que não usem o espaço de comentários do post para enviar dúvidas.

Operadores Aritméticos com Variáveis, MsgBox e Chr – VBA

Oi Pessoal!

Dando continuidade ao post Declaração de Variáveis VBA (comandos Dim e Option Explicit), vou falar sobre os operadores aritméticos que são usados em cálculos e comparações entre variáveis no VBA.

A tabela abaixo contém os principais operadores.

Como exemplo de utilização desses operadores, considere o pequeno trecho de código a seguir, onde declaramos as variáveis x, y e z, atribuímos valores a essas variáveis e em seguida efetuamos algumas operações.

Obs: as linhas que iniciam com apóstrofe são usadas como comentários, sendo desconsideradas pelo VBA na execução do código. Sugiro a inclusão de lembretes e comentários para facilitar o entendimento das linhas de código. É importante mantermos organização e padronização nas Macros que criamos para facilitar o entendimento e a manutenção.

 

Exemplo de uso de operadores aritméticos:

 

‘ Exemplo de utilização de variáveis e operadores aritméticos
‘ Declaração de variáveis.

Dim x, y, z As Integer
x = 10
y = 25
z = x*y

‘ Nesse exemplo a variável z conterá o valor 250

 

Exemplo de código:

 

Sub Operadores_Aritméticos()

‘ Declaração de variáveis.

Dim x As Integer

Dim y As Integer

Dim soma, subtração, divisão, multiplicação, intdivisão, exponenciação, módulol As Double

x = 30

y = 4

‘ Efetuando cálculos com os Operadores Aritméticos.

soma = x + y

subtração = x – y

divisão = x / y

multiplicação = x * y

intdivisão = x \ y

exponenciação = x ^ y

módulo = x Mod y

‘ Mensagens para exibição dos resultados.

MsgBox “Os números são: ” & x & ” e ” & y & Chr(13)

MsgBox “Soma: ” & soma & Chr(13) & “Subtração: ” & subtração & Chr(13)

MsgBox “Divisão: ” & divisão & Chr(13) & “Multiplicação: ” & multiplicação & Chr(13)

MsgBox “Divisão inteira: ” & intdivisão & Chr(13) & “Exponenciação: ” & exponenciação & Chr(13)

MsgBox “Resto da divisão: ” & módulo

MsgBox “FIM”

End Sub

 

Ao executar a Sub acima, você visualizará as seguintes caixas de mensagens disparadas pelo Excel (nesta sequência).

 

Para finalizar, vamos falar das funções MsgBox e Chr(número)

Conforme o exemplo anterior, usamos a Função MsgBox para exibir mensagens em uma janela Pop-Up. Para unir as diversas partes da mensagem usamos o operador de concatenação &.

A Função Chr(número) envia o caractere correspondente ao número digitado entre parênteses, que corresponde ao padrão ASCII (American Standard Caracter Interchange Information). Neste padrão, cada caractere possui um número associado. O número 13, por exemplo, está associado ao <ENTER>, ou seja, enviamos um <ENTER> para a caixa de mensagem, equivalente a uma troca de linha, para que os dados apareçam em linhas separadas.

Abs, Dr. E

P.S. Gostaria de pedir desculpas, mas infelizmente não estou conseguindo responder todos os e-mails com dúvidas que venho recebendo. Por isso, peço que não usem o espaço de comentários do post para enviar dúvidas.