VBA TRIM

Função Excel VBA TRIM

VBA TRIM é categorizado sob as funções de string e texto, esta função é uma função de planilha em VBA e semelhante à referência da planilha, esta função é usada para cortar ou remover os espaços indesejados de uma string, leva um único argumento que é uma string de entrada e retorna uma saída como string.

Existem várias situações em que baixamos os dados de servidores online e nos deparamos com uma situação de dados desorganizados e espaços indesejados na célula. Lidar com espaços desnecessários é muito doloroso de se trabalhar. Em funções regulares de planilha, temos uma função chamada TRIM no Excel para se livrar de “Espaços à esquerda, Espaços à direita e espaço intermediário” . No VBA também temos uma função chamada TRIM que funciona exatamente da mesma forma que a função do Excel, mas há apenas uma pequena diferença, veremos isso neste artigo um pouco mais tarde.

O que a função Trim faz?

TRIM é uma função de string que remove espaços no Excel da célula selecionada. Em espaços, temos 3 tipos “Espaços principais, Espaços finais e espaços intermediários” .

Espaço inicial não é nada, mas antes que qualquer valor comece na célula, se houver algum espaço, ele é chamado de Espaço inicial.

Espaço à direita não é nada, mas após o final do valor na célula, se houver algum espaço, ele é chamado de Espaço à direita.

O espaço intermediário não é nada após o final de cada palavra, idealmente devemos ter um caractere de espaço, qualquer coisa a mais do que um caractere de espaço é chamado de espaço intermediário.

Para superar todos esses tipos de problemas, temos uma função chamada TRIM.

Sintaxe

String: Qual é a string ou valor que você deseja cortar? Pode ser uma referência de célula, bem como um fornecimento direto de valor para a fórmula.

Exemplos

Você pode baixar este modelo de função VBA TRIM aqui - modelo de função VBA TRIM

Exemplo 1

Agora veremos como remover espaços à esquerda no Excel usando a função TRIM. Siga as etapas abaixo

Etapa 1: Crie um nome de macro e declare uma variável como String.

Código:

 Sub Trim_Example1 () Dim k As String End Sub 

Passo 2: Agora, para esta variável declarada, atribua um valor usando o TRIM.

Código:

 Sub Trim_Example1 () Dim k As String k = Trim (End Sub 

Etapa 3: Para esta string, digite a palavra entre aspas duplas como “Bem-vindo ao VBA”.

Código:

 Sub Trim_Example1 () Dim k As String k = Trim ("Bem-vindo ao VBA") End Sub 

Passo 4: Agora mostre o resultado desta variável na caixa de mensagem.

Código:

 Sub Trim_Example1 () Dim k As String k = Trim ("Bem-vindo ao VBA") MsgBox k End Sub 

Etapa 5: execute este código usando a tecla F5 ou execute manualmente, devemos obter uma string correta na caixa de mensagem.

Resultado:

Portanto, a função TRIM removeu todos os espaços iniciais que inserimos no valor da string. Agora o resultado é uma frase correta, ou seja, “Bem-vindo ao VBA” .

Exemplo # 2

Agora dê uma olhada em mais um exemplo para remover espaços à direita. Pegue a mesma palavra, mas desta vez insira espaços à direita.

“Bem-vindo ao VBA“.

Código:

 Sub Trim_Example2 () Dim k As String k = Trim ("Bem-vindo ao VBA") MsgBox k End Sub 

Executar este código manualmente ou por meio da tecla F5 A função Trim também remove espaços à direita.

Resultado:

Exemplo # 3 - Limpe os dados nas células

Agora veremos o exemplo prático de limpeza de dados em células do excel. Suponha que você tenha um conjunto de dados como o abaixo em sua planilha do Excel.

Quando temos mais de uma célula de dados, precisamos escrever códigos diferentes. Siga as etapas abaixo para escrever o código.

Etapa 1: Declare uma variável como “Intervalo”.

Código:

 Sub Trim_Example3 () Dim MyRange As Range End Sub 

Etapa 2: como o tipo de dados do intervalo é um objeto, precisamos primeiro definir o intervalo. Portanto, defina o intervalo como “seleção”.

Código:

 Sub Trim_Example3 () Dim MyRange As Range Set MyRange = Selection End Sub 

Nota: MyRange = Selection significa que qualquer célula que eu selecionar se torna um intervalo. Portanto, nessa faixa, TRIM remove espaços indesejados.

Etapa 3: Agora, usando For Each VBA Loop, aplique a função TRIM.

Código:

 Sub Trim_Example3 () Dim MyRange como intervalo Definir MyRange = Seleção para cada célula em MyRange cell.Value = Trim (célula) Next End Sub 

Etapa 4: Agora volte para a planilha. Vá inserir e desenhar uma forma retangular.

Etapa 5: adicione uma palavra à forma retangular inserida, clique aqui para limpar os dados.

Etapa 6: clique com o botão direito na forma retangular e selecione a macro atribuída.

Etapa 7: Agora a caixa de nomes de macro será aberta. Selecione o nome da macro que acabamos de criar. Clique em Ok.

 

Etapa 8: Agora selecione o intervalo em que precisamos limpar os dados.

Etapa 9: Após selecionar o intervalo, clique na caixa retangular da macro atribuída. Isso limpará os dados.

Portanto, limpamos o valor, ou seja, após remover os espaços à esquerda e à direita.

Diferença entre Excel e VBA Trim Function

The only difference between them is VBA function cannot remove in between spaces while the worksheet function in VBA does. For example, take a look at the below example.

In cell A3 we have in-between spaces, if select and click on the rectangular shape it will only remove trailing & leading spaces, not in-between spaces.

To overcome this problem we need to use the trim function as a worksheet function in the code.

Code:

 Sub Trim_Example3() Dim MyRange As Range Set MyRange = Selection For Each cell In MyRange cell.Value = WorksheetFunction.Trim(cell) Next End Sub 

Here we have used worksheet function not a vba function. This will remove all kinds of spaces.

Things to Remember

  • VBA Trim & Worksheet Trim syntax is exactly the same.
  • It can only remove leading & trailing spaces, not in-between spaces.
  • Excel trim function can remove all kinds of spaces.