Ejemplos de la Función ESPACIOS – Excel, VBA y Google Sheets
Download the example workbook
Este tutorial muestra cómo utilizar la Función ESPACIOS en Excel, Google Sheets y VBA para eliminar todos los espacios adicionales del texto.
Cómo Utilizar la Función ESPACIOS:
La función ESPACIOS elimina todos los espacios de un texto, excepto los espacios simples entre palabras.
=ESPACIOS(B3)
ESPACIOS para Eliminar los Espacios Anteriores y Posteriores
Puede ser difícil detectar las celdas con espacios finales porque el texto suele estar alineado a la izquierda:
Pero si hace doble clic en la celda B3 o B4, verá los espacios adicionales que tienen resaltados:
Encontrar el Número de Espacios Adicionales
Puede querer averiguar si la celda tiene espacios adicionales en lugar de hacer ESPACIOS de inmediato.
=LARGO(B3)-LARGO(ESPACIOS(B3))
La función LARGO devuelve el número total de caracteres de una celda. Puede utilizarla para deducir la longitud total de un texto recortado (eliminando todos los espacios adicionales).
Cuando ESPACIOS No Funciona
Puede ver espacios adicionales obvios en las celdas, pero aplicar ESPACIOS no parece funcionar.
Esto se debe a que no se trata de los típicos espacios. Todos los caracteres del teclado tienen un código ASCII (American Standard Code for Information Interchange) específico. Puede utilizar la función CODIGO para averiguar cuál es el código ASCII del carácter. Por ejemplo
=CODIGO(B3)
El último es un espacio normal en el teclado y su código ASCII es 32. Si copias uno de los «espacios» de donde no funciona el TRIM y usas CODIGO en él, muestra 160:
El carácter ASCII 160 es un espacio de no ruptura y suele encontrarse en páginas web y copiarse en Excel. ESPACIOS sólo elimina el carácter 32 (espacios regulares).
Para eliminar los espacios de no ruptura y los regulares, es necesario combinar tanto la función SUSTITUIR como ESPACIOS.
=ESPACIOS(SUSTITUIR(B3;CARACTER(160);""))
SUSTITUIR sustituye todos los espacios sin romper (código ASCII 160) por espacios en blanco y ESPACIOS elimina los espacios regulares adicionales (código ASCII 32) si los hubiera.
ESPACIOS con Números/Fechas
ESPACIOS es una función de texto. Al utilizar ESPACIOS, el resultado es un texto. Por ejemplo, no podrá sumar estos números en la celda E3 después de usar ESPACIOS.
Para superar los problemas anteriores, puede utilizar la función VALOR para convertir de texto a valores.
ESPACIOS vs LIMPIAR
La función ESPACIOS no funciona para los caracteres no imprimibles, por lo que si necesita eliminar los caracteres no imprimibles utilice la función LIMPIAR. Consulte la siguiente tabla para comparar las dos funciones:
Ejemplos Útiles de la Función ESPACIOS
Puede combinar ESPACIOS con algunas de las funciones de Excel de forma útil.
Extraer la Última Palabra de la Cadena
Podemos combinar ESPACIOS, DERECHA, SUSTITUIR, y REPETIR para extraer la última palabra de una cadena (Haga clic para ver un desglose de la fórmula) :
=ESPACIOS(DERECHA(SUSTITUIR(B3;" ";REPETIR(" ";10));10))
Lo que nos daría los siguientes resultados:
Encontrar la Enésima Palabra de la Cadena
Podemos combinar EXTRAE, LARGO, SUSTITUIR y REPETIR con ESPACIOS para devolver la enésima palabra de la cadena (Haga clic para ver un desglose de la fórmula) .
=ESPACIOS(EXTRAE(SUSTITUIR(A$2;" ";REPETIR(" ";LARGO(A$2)));(B2-1)*LARGO(A$2)+1;LARGO(A$2)))
ESPACIOS en Google Sheets
La función ESPACIOS funciona exactamente igual en Google Sheets que en Excel:
Notas Adicionales
Cuando se trabaja con texto, siempre es una buena idea utilizar la función ESPACIOS para limpiar el texto. Los espacios sobrantes pueden provocar errores no deseados al trabajar con funciones como BUSCARX y COINCIDIR.
Puedes usar la Función IGUAL para probar si dos cadenas de prueba son iguales. Tenga en cuenta que las funciones IGUAL, SUSTITUIR y ENCONTRAR distinguen entre mayúsculas y minúsculas, por lo que también es una buena idea utilizar las funciones MAYUSC, MINUSC o NOMPROPIO para poner todo el texto en un tipo de letra consistente (Mayúscula/Minúscula/TipoTítulo).
Ejemplos de TRIM (ESPACIOS) en VBA
También puede utilizar la función TRIM en VBA. Escriba:
Application.WorksheetFunction.Trim(text)
Para los argumentos de la función (texto, etc.), puedes introducirlos directamente en la función, o definir variables para utilizarlos en su lugar.