Mostrando las entradas con la etiqueta Dividir columna. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Dividir columna. Mostrar todas las entradas

martes, octubre 08, 2019

Las trampas ocultas de Power Query

Confieso que el título de este post peca de sensacionalismo, pero es por una buena causa: mostrar que, si no prestamos la debida atención, las consultas que creamos con Power Query pueden fallar y cuando lo hacen, lo harán en el momento menos adecuado (por ejemplo cuando estamos demostrando las bondades del modelo que acabamos de construir a nuestro jefe o cliente).

Voy a mostrar a una de esas trampas: la trampa de dividir por columnas (basado en un hecho real 😊).

Esta tabla muestra en que países han realizados ventas algunos de nuestros agentes


Podemos ver que Steven a realizado ventas en 4 países , Michael en 5 y Anne también en 5.

Queremos organizar la tabla de manera que en la columna "País" aparezca un solo país por fila. Así tendremos 4 filas para Steven, 5 para Michael y 5 para Anna.

Damos los siguientes pasos:

lunes, septiembre 30, 2019

Eliminar saltos de línea en celdas de Excel

Excel permite dividir textos ingresado a una celda en varias líneas usando Alt+Enter para separar las entradas. Por ejemplo


Las celdas A2 y A3 contienen cada una seis nombres.Esta técnica, que puede ser visualmente conveniente, genera muchos problemas cuando queramos usar estos datos. Por ejemplo si queremos asignar a cada nombre alguna característica como edad. Para poder hacerlo tenemos que deshacer los saltos de línea para tener cada nombre en  una celda separada.

En este post voy a mostrar como hacerlo con las herramientas de Excel Clásico y como hacerlo con Power Query.

lunes, agosto 12, 2019

Power Query - Columnas por ejemplo

En el post anterior vimos como podemos usar Columna por ejemplo  del Power Query para realizar con facilidad tareas complicadas, como extraer números de una cadena alfa-numérica no ordenada.
En este post me voy a extender un poco más sobre esta herramienta tan útil.

Una de las características más sobresalientes de Power Query es que nos permite realizar transformaciones complicadas de datos utilizando la interfaz del usuario. Es decir, sin el más mínimo conocimiento del lenguaje M, el motor del Power Query. Sin embargo, tener conocimientos del lenguaje M, aún mínimos, es muy útil (les invito a leer este post donde cito las etapas del aprendizaje de Power Query según Gil Raviv).

Vamos a ver como Columna por ejemplo puede ayudarnos a aprender algo acerca de las funciones del lenguaje M.

lunes, agosto 05, 2019

Extraer valores de columnas alfanuméricas con Power Query

En la nota anterior vimos con que facilidad Power Query nos permite extraer valores numéricos de una cadena de texto mixta (letras y números).
En los casos que analizamos el texto a dividir o de donde debíamos extraer los valores, tenía cierto orden; letras y luego números o números y luego letras.
Anticipándome a mis avisados lectores propuse la situación en la cual el texto a dividir, que contiene tanto números como letras, no sigue ningún patrón u orden, como en este ejemplo



Para casos como éste Dividir columna no nos sirve. Pero Power Query no nos deja librados a nuestra amarga suerte; en su baúl de herramientas tenemos Columna a partir de los ejemplos, en el tab Agregar columna 

miércoles, julio 31, 2019

Dividir columnas con Power Query - tercera nota

En las previas notas del tema vimos las ventajas de usar Dividir columna del Power Query sobre la funcionalidad Texto en columnas del Excel clásico (y no será un exceso volver a enfatizar que, en todo lo relacionad con transformación de datos, Power Query es muy superior a Excel clásico).

Power Query es una herramienta en constante evolución. Microsoft ha incorporado últimamente cuatro nuevas opciones a Dividir columna a las "clásicas" Por delimitador  y Por número de caracteres

Estas nuevas opciones facilitan aún más la tarea de extraer valores o dividir columnas. Veamos por ejemplo la siguiente situación: se nos pide extraer los valores numéricos de las celdas de la columna A

lunes, julio 29, 2019

Dividir columnas con Power Query - segunda nota

En la nota anterior comparamos Texto en columnas  de Excel Clásico con Dividir Columna  de Power Query para mostrar cuanto más eficiente es esta última herramienta.
En esta nota voy a mostrar una situación imposible de resolver cob Texto en Columnas  y que Power Query lo hace con facilidad.
Consideremos esta tabla de clientes agrupados por vendedores


En otra tabla tenemos las ventas a cada cliente. Ahora supongamos que se nos pide calcular las comisiones de cada vendedor para lo cual tenemos que totalizar las ventas por vendedor. Obviamente los datos están organizados de manera tal que no podemos realizar la tarea. Necesitamos "aplanar" la tabla de tal manera que en cada fila haya una celda con el nombre del vendedor y la la celda contigua el nombre del cliente. De esa manera podremos usar Combinar consultas del Power Query para calcular las ventas por vendedor (o, si prefieran y espero que no lo prefieran, usar BUSCARV para extraer las ventas en cada fila y luego resumirlas con una tabla dinámica o SUMAR.SI).
Vamos a mostrar como hacerlo con Power Query es cuestión de segundos.

miércoles, julio 24, 2019

Dividir columnas con Power Query

Una tarea frecuente cuando de transformar datos se trata es dividir una columna en varias. Desde sus primeras versiones Excel cuenta con una herramienta para dividir columnas: Texto en Columnas, denominación que nunca logré entender; "Dividir columna" (Split column) me parece más apropiado.


Pero no es éste el tema del post. Vamos a mostrar por que Dividir columna del Power Query es superior a Texto en Columnas del Excel clásico.

Veamos el siguiente caso. Hemos recibido una lista de clientes con una única columna que incluye el nombre del cliente, la dirección y la ciudad.


Nuestra tarea es extraer al ciudad de cada línea. Aparentemente Texto en columnas lo puede hacer con facilidad usando la coma como separador de los campos. Pero si nos fijamos con atención veremos que la fila 2 aparecen dos comas, una separa el nombre de la dirección y la otra la dirección de la ciudad, pero en la fila 3 hay tres comas (una precede el numero 23, la otra inmediatamente después del número).
Si usamos  Texto en columnas obtendríamos ésto:


En algunos casos la ciudad aparece en la columna C y en otros en la columna D. Remediar esta situación en la hoja de Excel sería extenuante (supongamos una lista de cientos o tal vez miles de clientes).

Si usamos Power Query la tarea se convierte en "coser y cantar". Como siempre, empezamos por crear una conexión a la tabla


En el menú Inicio-Transformar abrimos las opciones de Dividir Columna-por delimitador



En el diálogo que se abre


Elegimos la opción Delimitador situado más a la derecha  y apretamos Aceptar y ....


El nombre de la nueva columna lo establece Power Query. Podemos cambiarlo haciendo un doble clic sobre el encabezamiento o usando el menú contextual Cambiar nombre. También podemos editar el código del paso aplicado usando la barra de fórmulas


cambiando "Clientes.2" por el nombre deseado (digamos, Ciudad). Sencillamente lo editamos en la barra y apretamos Enter.

Ahora tenemos que separar el nombre del cliente de la dirección. Como ya habrán supuesto, usamos la opción Delimitador situado más a la izquierda.

Todo el proceso de división de la columna usando Power Query puede verse en este video