Como construir una lista de valores únicos en Excel

domingo, enero 22, 2006

Los ejemplos en esta nota fueron desarrollados usando la versión inglesa de Excel. Por favor, lean esta nota.

Un uso frecuente es importar reportes del mainframe a Excel para luego elaborar allí los datos. Excel tiene muchas ventajas en este terreno sobre todos los sistemas centrales y esta es una de las razones principales de su éxito.
Supogamos que importamos a Excel un reporte de las ventas del período. Este informe tiene cuatro columnas: número de factura, nombre del cliente, fecha y monto. El informe tiene, supongamos, 12.000 líneas. Queremos saber cuáles son los clientes qué aparecen en el informe, es decir obtener una lista donde el nombre de cada cliente aparezca una sola vez.
Una solución es utilizar una tabla pivot. Pero digamos que no estamos familliarizados con esta técnica. Otro camino de obtener esta lista es utilizar el menú Data--->Filter--->Advanced Filter.
Nuestro informe una vez importado a Excel se ve así


Abrimos el menú Data--->Filter--->Advanced Filter


Ahora hay que hacer lo siguiente:

  1. Marcamos la opción "copy to another location"
  2. Seleccionamos el rango relevante en la ventanilla "list range", en nuestro ejemplo B1:B21
  3. Marcamos "unique records only"
  4. En la ventanilla "copy to" seleccionamos una celda en la misma hoja (no se puede copiar la lista directamente a otra hoja) por ejemplo F1


Apretamos OK y en la columna F aparecerá la lista con los nombres


Si te gustó esta nota anotala en del.icio.us


Technorati Tags: ,



Categorías: Manejo de Datos_, Varios_

15 comments:

Anónimo,  14 noviembre, 2006 22:58  

Hola muy interesante tu blog, es de mucha aduda, pero este tema de lista unica no me resulto hice todo lo que aparece tal cual y me copia toda la lista nuevamente sin el criterio unico del nombre no entiendo que puede estar fallando.

Anónimo,  14 noviembre, 2006 23:05  

Sorry amigo yo entendi mal
(post anterior), todo bien a la perfección gracias por el dato muy util

Anónimo,  23 octubre, 2008 02:08  

estimado amigo como puedo en una planilla de registros de ventas lograr sumar solo el valor de los productos entregados

Jorge L. Dunkelman 25 octubre, 2008 09:14  

Necesitas crear una columna auxiliar donde cada venta esté calificada como entregada/no entregada. Luego puedes usar SUMAR.SI o tablas dinámicas para totalizar en forma condicional.

Herman Karfack 20 febrero, 2009 18:45  

hola saludos, aprovechando tu post queria saber si existe alguna forma de eliminar de un listado una serie de columnas comparandolas con otra columna conocida, es decir la operacion inversa de filtro avanzado en la busqueda de valores iguales.

Saludos

Jorge L. Dunkelman 22 febrero, 2009 19:47  

Si bien no queda del todo claro, la respuesta es si. Posiblemente tendrás qeu usar una macro.

Herman Karfack 22 febrero, 2009 22:38  

Jorge, basicamente es extraer datos conocidos a un listado.

ej.
datos conocidos
1
2

listado
1
2
3
4
5

Resultado esperado
3
4
5

gracias por tu respuesta.

Jorge L. Dunkelman 23 febrero, 2009 18:42  

Hay varias maneras. Puedes usar Autofiltro o Filtro Avanzado, si tienes que usar más de dos criterios.

Anónimo,  24 marzo, 2009 22:40  

Hola Jaime. Tengo una base de datos con informacion de pedidos, contiene varias columnas como Cod. pedido, provedor, precio, fecha de entrega etc. y tiene tres columnas para modificaciones, las cuales se dejan en blanco si no hay cambios. necesito crear, en otras hojas, tablas que contengan solo los datos de los pedidos que tengan alguna modificacion (una tabla por cada tipo de modificacion). Es posible que hayan mas de un tipo de modificacion en un pedido, así que debe aparecer el pedido en todas las tablas correspondientes. Gracias de antemano por cualquier sugerencia.

Cordial saludo y Que Dios los bendiga

Jorge L. Dunkelman 30 marzo, 2009 07:52  

Hola
el nombre es Jorge, no Jaime. De tu descripción creo que agregaría en la hoja de los pedidos una columna auxiliar que moniteree si hay modificaciones en el pedido. Luego pondría una tabla dinámica basada en la lista de los pedido que traiga sólo aquellas filas donde la columna auxiliar muestra que ha habido una modificación.

Anónimo,  20 octubre, 2009 18:12  

Hola Jorge

Esta nota está muy bien, pero quizás un usuario poco avanzado se pueda confundir y no se atreva a decir que no lo entendió. Cuando marcamos la celda del Copy to ("Copiar a" en el Excel en castellano) la celda F1 de tu ejemplo debería tener previamente escrito el texto Name (coincidente con el de la columna) para que saque los valores únicos y sin embargo en la imagen del ejemplo, F1 está en blanco.
Un saludo y sigue así, que tu aportación es magnífica.
SL

Jorge L. Dunkelman 20 octubre, 2009 21:26  

De momento que ponemos el rango explícitamente (B1:B21 en nuestro ejemplo) incluyendo el nombre dle campor (B1), no hace falta poner el rótulo en forma explícita.

Anónimo,  20 octubre, 2009 21:56  

Jorge:

Perdona, tienes toda la razón. Creía que el rango era toda la lista (B1:D21) en cuyo caso sí que sería necesario poner en la celda del "Copy to" (en este cado F1) el valor Name antes de ejecutar el filtro.

Un saludo,
SL

María Luisa Eslava 26 julio, 2011 22:40  

Hola Cuando aplico el filtro avanzado en una columna particular me sale el siguiente mensaje

"el rango de extracción tiene un nombre de campo inexistente o no permitido"

La columna anterior me filtró bien. La verdad no se que pasa, ya revisó para ver que puede ser, pero no encuentro nada raro, el contenido es alfanumérico.

Gracias

Jorge L. Dunkelman 27 julio, 2011 07:01  

El mensaje se refiere a algún problema con los encabezados de los campos (falta alguno?) o tal vez con los campos de criterios (los encabezados del campo de criterios no coinciden con los de la tabla de datos).

Publicar un comentario

Seguidores

Google+ Followers

Google+ Badge

Términos Legales

  © Blogger template On The Road by Ourblogtemplates.com 2009

Back to TOP