miércoles, 16 de noviembre de 2011

Evitar Espacios Innecesarios al Introducir Textos

"Quisiera saber si hay alguna manera de evitar que por descuido se puedan introducir espacios al principio y al final de una introducción de texto en una celda de Excel y de igual forma impedir que se introduzca más de un espacio entre dos palabras".

Vamos a resolver este problema de una manera bien sencilla con dos funciones (ESPACIOS y LARGO) y una herramienta (Validación de datos). Partimos del siguiente ejemplo:


Lo que queremos conseguir es que si al introducir texto en las celdas de entrada (en este ejemplo rango B3:B7) introducimos espacios en blanco, ya sea al principio, al final o en el medio excel nos devuelva un mensaje de error y no nos permita continuar hasta que corrijamos dicho problema. Como se puede ver en la siguiente imagen, si introducimos espacios innecesarios en la entrada de texto, excel nos devuelve el mensaje de error correspondiente:


Para conseguir esto tenemos que seguir los siguientes pasos:

1. Seleccionamos el rango B3:B7
2. Vamos al menú Datos/Validación de datos
3. En Criterio de validación/Permitir seleccionamos la opción de Longitud de texto.
4. En Criterio de validación/Datos seleccionamos Igual a.
5. En Criterio de validación/Longitud escribimos la siguiente fórmula:

=LARGO(ESPACIOS(B3))


6. En la pestaña de Mensaje de error seleccionamos el Estilo Límite o Grave (según la versión) y personalizamos el mensaje que queremos que aparezca si cometemos un error.


Espacios(B3) quita todos los espacios del texto excepto los espacios entre palabras. La función Largo cuenta el número de caracteres que hay en una celda. Al anidar la función Espacios dentro de la función Largo LARGO(ESPACIOS(B3)) lo que estamos haciendo es calcular el número de caracteres que tiene una entrada de texto una vez hecha la limpieza de espacios en blanco innecesarios. Si dicho número coincide con la longitud del texto que introducimos en B3 entonces significará que no hay espacios en blanco y que, por lo tanto, la entrada es correcta. Si por el contrario el número de caracteres que tiene la entrada de texto difiere del calculado por la fórmula explicada entonces sólo puede ser debido a que existan espacios en blanco que deben ser corregidos.