Beruflich Dokumente
Kultur Dokumente
0
1
6
Seguramente has tenido uno de esos das en los que recibes datos para ser analizados en
Excel pero la informacin fue capturada en Word separando cada valor por una coma. Hoy
te mostrar uno de mis trucos favoritos para migrar esos datos a Excel.
Supongamos que despus de hacer una encuesta, donde se pregunta la edad de las
personas, nos entregan la informacin de la siguiente manera:
Aunque podramos sentir el impulso de crear un archivo CSV y posteriormente importar los
datos a Excel, existe otra alternativa que podemos hacer en solo unos cuantos pasos.
Para migrar fcilmente los datos a Excel podemos utilizar la funcionalidad de Word conocida
como Convertir texto en tabla. Comenzamos por seleccionar las lneas que contienen los
datos y posteriormente vamos a la ficha Insertar > Tabla y dentro del men desplegable
seleccionaremos la opcin Convertir texto en tabla.
Lo nico que resta hacer es copiar los datos a Excel y para hacerlo rpidamente podemos
hacer clic en el indicador de seleccin ubicado en la esquina superior izquierda de la tabla
y que se muestra al momento de hacer clic sobre cualquiera de sus celdas.
Como resultado obtendremos los datos en cada una de las celdas de nuestra hoja, listos
para ser utilizados en Excel.
Los archivos de texto son muy comunes al momento de intercambiar informacin entre
diferentes tipos de sistemas. Anteriormente los sistemas de las grandes empresas no
generaban archivos Excel sino archivos de texto.
Por esa razn Excel incorpor desde sus primeras versiones la funcionalidad de importar
archivos de texto de manera que se pudiera analizar dicha informacin dentro de Excel.
Un archivo de texto que contiene informacin de una base de datos siempre hace uso de
algn caracter especial para separar la informacin perteneciente a cada columna. Es
precisamente ese caracter utilizado el que hace la diferencia entre un tipo de archivo y otro.
Por ejemplo, aquellos archivos en donde cada cambio de columna est indicado por el signo
de puntuacin , (coma) es conocido como archivo CSV por sus siglas en ingls (Comma-
Separated Values). Observa el siguiente ejemplo de un archivo CSV:
Estos dos tipos de archivos son los ms comunes, pero podras encontrarte alguno
diferente que tal vez utilice el signo ; para separar las columnas, sin embargo cualquier
tipo de archivo de texto podr ser importado a Excel sin importar el caracter separador
utilizado.
Para importar un archivo de texto debes ir a la ficha Datos y seleccionar el comando Desde
texto que se encuentra dentro del grupo Obtener datos externos. Esto abrir el cuadro de
dilogo Importar archivo de texto que permitir seleccionar el archivo a importar.
De igual manera en este paso se puede indicar a Excel que comience a importar a partir de
alguna fila especfica del archivo. Al hacer clic en el botn Siguiente, Excel sugerir el tipo
de separador que ha descubierto dentro del archivo a importar y generalmente ser
acertado en su sugerencia. Aun as recomiendo validar que dentro de la vista previa
efectivamente se muestra una separacin adecuada de los datos.
Solamente tienes 3 opciones: General, Texto y Fecha. Sugiero poner especial atencin a
las fechas de manera que despus de la importacin se facilite su manejo e interpretacin
dentro de Excel. Al hacer clic en el botn Finalizar, se preguntar por la ubicacin dentro
de la hoja de Excel donde se colocarn los datos importados.
Los archivos de texto son uno de los mtodos de intercambio de datos ms populares en
la actualidad ya que pueden ser abiertos y consultados por diversas aplicaciones en
diferentes sistemas operativos como Windows, Mac OS, Linux, iOS, Android, etc.
A continuacin, veremos lo simple que es crear cada uno de estos dos tipos de archivos en
Excel. La hoja de datos que exportaremos en nuestros ejemplos ser la siguiente:
Ser muy probable que tambin se muestre una segunda advertencia indicando que
nuestro archivo contiene formatos que no son compatibles con los archivos de texto
delimitados por tabulaciones. Solamente debers pulsar el botn S para continuar con el
proceso y como resultado obtendremos un archivo de texto como el siguiente:
Observa que en esta ocasin Excel ha utilizado el punto y coma como el separador entre
cada uno de los campos.
Supongamos que para nuestra hoja de datos de ejemplo necesitamos crear un archivo de
texto que tenga un ancho mximo de 15 caracteres, tanto para la columna Nombre como
para la columna Apellido, y una longitud mxima de 25 caracteres para el correo electrnico.
Los datos los generar en una hoja diferente y utilizar la siguiente frmula para la primera
columna:
=CONCATENAR(Hoja1!A1,REPETIR(" ",15-LARGO(Hoja1!A1)))
La frmula anterior nos sirve para obtener los valores de las columnas Nombre y Apellido.
Para la columna Correo electrnico solo es necesario modificar el segundo argumento de
la funcin REPETIR reemplazando el nmero 15 por el nmero 25 que es el mximo
nmero de caracteres permitido para dicha columna.
Preparado por: Carlos Alberto Valencia Garca
Una vez aplicada esta frmula a nuestro rango de datos podremos realizar la exportacin
a un archivo de texto. Ya que en este caso no necesitamos ningn tipo de separador
podemos guardar el archivo comoTexto Unicode y el resultado ser el siguiente:
As como en este ltimo ejemplo he dado un tratamiento especial a los datos antes de
exportarlos, es posible hacer diferentes modificaciones para ajustarnos a los requerimientos
del archivo de texto que vamos a exportar. Algunas modificaciones que se realizan con
cierta frecuencia son las siguientes:
Estos cambios los podemos hacer con funciones de Excel de manera que coloquemos los
datos en una hoja tal como los necesitamos y posteriormente hacer la exportacin hacia un
archivo de texto.
Cuando tenemos un texto que deseamos dividir en varias celdas de nuestra hoja, podemos
utilizar elAsistente para convertir texto en columnas. Este asistente nos ayudar a colocar
cada palabra de nuestro texto en una columna diferente.
Para nuestro primer ejemplo utilizaremos una cadena de texto muy simple: Dividir texto en
celdas diferentes. Esta cadena de texto se encuentra en la celda A1 y para dividirla
debemos seleccionarla y posteriormente pulsar el comando Texto en columnas que se
encuentra en la ficha Datos > Herramientas de datos.
Al pulsar el comando Texto en columnas se mostrar el primer paso del asistente el cual
nos guiar por todo el proceso. En el paso 1 debemos asegurarnos de seleccionar la
opcin Delimitados ya que existe un carcter, que es el espacio en blanco, que delimita la
separacin de cada palabra que deseamos colocar en diferentes columnas.
Al seleccionar la opcin Espacio, la vista previa de los datos mostrar la manera en que
ser dividido el texto de la celda A1. Al pulsar el botn Siguiente iremos al paso final del
proceso donde tenemos acceso a algunas configuraciones avanzadas sobre el formato de
los datos.
Como has visto, al indicar el espacio como el separador de una cadena de texto, Excel ha
colocado todas las palabras en diferentes celdas. El ejercicio anterior lo hemos hecho para
una sola cadena de texto, pero puedes hacer lo mismo para varias cadenas de texto a la
vez. Para eso debers asegurarte de seleccionar todo el rango de celdas antes de iniciar
el Asistente para convertir texto en columnas.
Por ejemplo, en la siguiente imagen puedes ver que tengo varias cadenas de texto en el
rango A1:A4 y han sido seleccionadas antes de pulsar el comando Texto en columnas.
Al principio de este artculo mencion que el comando Texto en columnas es utilizado por
algunos usuarios de Excel para separar nombres y apellidos, as que quiero terminar con
un ejemplo que ilustre este caso.
Pero antes de continuar debo decirte que la separacin de nombres y apellidos es una tarea
que puede llegar a ser sumamente compleja. Si quieres saber a lo que me refiero, puedes
consultar el artculo Cmo separar nombres y apellidos en Excel ms adelante.
Es as como el comando Texto en columnas es de gran utilidad para esas ocasiones en las
que necesitas dividir un texto en varias celdas, ya sea que necesitas separar un texto en
palabras o que existe un carcter delimitador que indicar las partes que se colocarn en
cada columna.
Si despus de hacer una revisin de los datos te das cuenta que para la mayora de los
registros tienes nombres de una sola palabra, as como apellidos de una sola palabra,
entonces te recomiendo utilizar el Asistente para convertir texto en columnas el cual
colocar cada palabra en una columna diferente.
Este asistente se encuentra en la ficha Datos dentro del grupo Herramientas de datos y
justamente en el paso 2 del proceso podrs elegir el Espacio como el carcter delimitador
para hacer la separacin en varias columnas. Al finalizar la ejecucin del asistente tendrs
un resultado similar al siguiente:
Un beneficio de este mtodo es que no importa si los datos comienzan por los apellidos o
por los nombres ya que de igual manera se realizar la separacin por palabras. Lo que es
muy importante es que todos los registros tengan la misma estructura, es decir, que todos
comiencen por apellido o que todos comiencen por nombre o de lo contrario tendrs un
caso ms difcil de resolver.
En realidad, muy pocas veces podremos aplicar el mtodo anterior a nuestros datos porque
los nombres pueden contener apellidos compuestos como los mostrados en el primer
ejemplo de este artculo. Para resolver este tema no hay otra manera ms que crear una
funcin VBA que haga la separacin de dichos apellidos y poder considerarlos como una
sola unidad.
Pero debo ser claro, los apellidos compuestos que podemos detectar fcilmente son
aquellos que comienzan por palabras como de, del, la, las, los, san. Si el apellido
no contiene estas palabras, ser prcticamente imposible saber si dos o ms palabras
forman un solo apellido. La funcin VBA (UDF) que nos ayudar a separar este tipo de
apellidos compuestos es la siguiente:
Al terminar con todos los pasos del Asistente, tendremos el siguiente resultado:
La diferencia ms importante es que para las primeras dos filas, el nombre se ha colocado
bajo la Palabra 2. En este caso ser necesario implementar una frmula de Excel para
evaluar si la Palabra 3 est vaca, y en su caso considerar el valor de la Palabra 2 como el
nombre en lugar de ser apellido.
Ya hemos visto algunas alternativas para separar nombres y apellidos en Excel, pero
existen casos en los que ninguna opcin podr hacer la separacin correcta. Me refiero a
esos casos donde existe ms de una palabra para definir alguno de los apellidos o el
nombre mismo. Por ejemplo, considera los siguientes datos:
Despus de aplicar nuestra funcin VBA y separar la informacin por columnas, notamos
que todos los nombres fueron divididos en cuatro palabras, pero la parte compleja es
detectar que para el primer nombre la Palabra 1 y la Palabra 2 forman el nombre de la
persona. Que para el segundo nombre la Palabra 3 y la Palabra 4 son un apellido
compuesto y para el ltimo nombre la Palabra 2 y la Palabra 3 forman un apellido
compuesto.
No existe funcin ni mtodo en Excel que sea capaz de hacer esta distincin de una manera
simple. Es por eso que es importante analizar los datos y aplicar el mtodo que mejor
aplique para la mayora de los casos y resolver manualmente las excepciones. Por
supuesto que todos estos problemas se evitaran si se implementara un sistema de captura
de datos adecuado y no dejar que Excel haga la separacin de nombres y apellidos. Pero
si no hay otra alternativa, considera utilizar los mtodos presentados en esta ocasin para
separar correctamente la mayor cantidad de datos posibles.
=CONCATENAR(A2,
=CONCATENAR(A2," ",
Existen dos mtodos para concatenar en Excel. El primero que mostrar utiliza
una funcin de Excel y el segundo mtodo utiliza el smbolo & conocido
como ampersand (en ingls).
Supongamos que tenemos una hoja de Excel con los nombres de personas en la
columna A y los apellidos en la columna B.
Esta frmula indica que el valor de la celda C1 ser el valor de la celda A1 seguido
por un espacio en blanco y seguido por el valor de la celda B1. Observa el
resultado de aplicar esta frmula a la columna C:
Una pregunta muy frecuente entre los usuarios de Excel es cmo deshacer la
concatenacin. La solucin es muy sencilla porque podemos utilizar la
funcionalidad de Excel conocida como Texto en columnas.