Skip to content

O que fazer quando a função TRIM do Excel não funciona

9 de maio de 2021

Quando você copia ou importa dados de texto para uma planilha do Excel, a planilha ocasionalmente retém espaços extras além do conteúdo que você inseriu. Normalmente, a função TRIM () por si só pode remover esses espaços indesejados, quer eles ocorram entre palavras ou no início ou no final de uma string de texto. Em certas situações, entretanto, TRIM () não pode fazer o trabalho. Em um computador, um espaço entre palavras não é uma área em branco, mas um caractere – e há mais de um tipo de caractere de espaço. Um caractere de espaço comumente usado em páginas da Web que TRIM () não remove é o Espaço inquebrável. Se você importou ou copiou dados de páginas da Web, pode não ser capaz de remover os espaços extras com a função TRIM () se eles forem criados por espaços não separáveis.

Espaços regulares e ininterruptos

Ted French
Os espaços são caracteres e cada caractere é referenciado por seu valor de código ASCII. ASCII significa o Código padrão americano para intercâmbio de informações – um padrão internacional para caracteres de texto em ambientes operacionais de computador que cria um conjunto de códigos para 255 caracteres e símbolos diferentes usados ​​em programas de computador. O código ASCII para um espaço sem quebra é 160. O código ASCII para um regular espaço é 32. A função TRIM () só pode remover espaços que tenham um código ASCII de 32.

Tabela de conjunto de códigos ASCII.

Wikimedia Commons
Diferentes estilos de tipos oferecem suporte a diferentes intervalos de códigos ASCII. A tabela padrão oferece 127 valores possíveis; os tipos de letra devem suportar, no mínimo, um mapa ASCII de 127 caracteres para serem considerados válidos. Mas os caracteres ASCII “estendidos”, chamados com códigos adicionais, frequentemente adicionam caracteres adicionais às suas fontes favoritas. Na verdade, o espaço não separável é, ele mesmo, um caractere ASCII estendido, enquanto um espaço padrão é … bem, padrão.

Removendo Espaços Ininterruptos

Remova os espaços não separáveis ​​de uma linha de texto usando as funções TRIM (), SUBSTITUTE () e CHAR (). Como as funções SUBSTITUTE () e CHAR () estão aninhadas dentro da função TRIM (), a fórmula deve ser digitada na planilha em vez de usar as caixas de diálogo das funções para inserir os argumentos. A fórmula, supondo que os dados com espaços não separáveis ​​estejam na célula A1, é:

Como funciona a fórmula

Cada função aninhada executa uma tarefa específica:

  • A função CHAR estipula os códigos ASCII relevantes para os dois espaços diferentes na fórmula – 160 e 32
  • A função SUBSTITUTE substitui ou substitui todos os espaços não separáveis ​​entre as palavras por espaços regulares
  • A função TRIM remove os espaços regulares extras entre as palavras para que a declaração apareça normalmente na planilha

Dada a lógica de ordem de operações das fórmulas do Excel, a fórmula chama a função SUBSTITUTE () e informa a ela para substituir todas as ocorrências de CHAR (160) – o espaço não separável – por um espaço padrão, CHAR (32), contido dentro da célula A1. Em seguida, a função TRIM () remove os espaços padrão da string substituída.

Considerações

Se TRIM () não pode realizar o trabalho, você pode ter problemas além de espaços não separáveis, particularmente se você estiver trabalhando com material de origem original renderizado em HTML. Quando você cola o material no Excel, cole-o como texto simples para remover a formatação de fundo da string e remover a formatação especial como caracteres que são renderizados como branco sobre branco – que parece como um espaço, mas não é. Verifique também as guias incorporadas, que podem ser substituídas usando a mesma fórmula acima, mas substituir o código ASCII 160 por 9. SUBSTITUTE () é útil para substituir qualquer código ASCII por qualquer outro.