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 TRIMExemplo 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.