Preguntaba un lector la manera de realizar algún tipo de filtro sobre una base de datos, condicionado el filtro a unos elementos duplicados:
Lo primero que se me ocurrió fue trabajar sobre la base de datos empleando columnas auxiliares para facilitar el trabajo.
Se trataba de marcar de alguna forma, mediante la combinación de algunas funciones, cuáles esran los registros que cumplian con los requisitos exigidos. Esto lo logré empleando funciones ya conocidas como CONTAR.SI o COINCIDIR.
Suponiendo en la columna A el campo 'Código' y en la columna B el campo 'FEC_BAJA'; entonces en una primera columna C incluiremos la siguiente formulación:
=SI(B2="";A2;"")
con la que descubrimos las celdas vacias (primera condición pedida).
En la columna D la fórmula:
=SI(CONTAR.SI(A:A;A2)>1;A2;"")
para descubrir los elementos repetidos.
Por último, en la columna E, otra columna auxiliar sobre la que aplicar un Autofiltro:
=SI(D2="";"";SI.ERROR(COINCIDIR(D2;C2:C25;0);""))
que sólo asignará algún valor a aquellos registros que cumplan las condiciones exigidas.
El Autofiltro a aplicar sobre la columna D sería mostrar elementos no vacios.
obteniendo el resultado deseado:
Buscar duplicados por T Contractual codigo FEC_BAJA 10107 10/05/2010 10107 18/06/2010 10108 08/08/2008 10109 05/05/2007 10109 06/03/2009 10110 05/10/2007 10111 10112 10113 14/02/2007 10114 21/12/2007 10114 29/07/2008 10115 09/02/2008 10116 10117 01/08/2008 10117 01/08/2009 10117 10118 01/05/2007 10118 15/07/2007 10118 08/07/2008 10118 10119 14/06/2007 10120 05/08/2007 10120 31/01/2008 10121 14/02/2007 Extraer 1ª condición y condición 2º en una sola consulta: Todos los que no tienen fecha de baja y de los que no tienen fecha de baja todos sus códigos que si que tienen fecha. Ejemplo 10117 01/08/2008 10117 01/08/2009 10117 10118 01/05/2007 10118 15/07/2007 10118 08/07/2008 10118 Estos son los que se necesitan sacar el resto no hacen falta . |
Lo primero que se me ocurrió fue trabajar sobre la base de datos empleando columnas auxiliares para facilitar el trabajo.
Se trataba de marcar de alguna forma, mediante la combinación de algunas funciones, cuáles esran los registros que cumplian con los requisitos exigidos. Esto lo logré empleando funciones ya conocidas como CONTAR.SI o COINCIDIR.
Suponiendo en la columna A el campo 'Código' y en la columna B el campo 'FEC_BAJA'; entonces en una primera columna C incluiremos la siguiente formulación:
=SI(B2="";A2;"")
con la que descubrimos las celdas vacias (primera condición pedida).
En la columna D la fórmula:
=SI(CONTAR.SI(A:A;A2)>1;A2;"")
para descubrir los elementos repetidos.
Por último, en la columna E, otra columna auxiliar sobre la que aplicar un Autofiltro:
=SI(D2="";"";SI.ERROR(COINCIDIR(D2;C2:C25;0);""))
que sólo asignará algún valor a aquellos registros que cumplan las condiciones exigidas.
El Autofiltro a aplicar sobre la columna D sería mostrar elementos no vacios.
obteniendo el resultado deseado:
Para el ejemplo que pones, ¿sabes cómo podría aplicar un filtro en la columna A, para filtar los códigos según criterio 1, 2 o 3? Es decir no filtrar por códigos sino por grupos de códigos de cada condición. Muchas gracias
ResponderEliminarHola Rocio,
Eliminardiscúlpame pero no comprendo a qué te refieres con 'grupos de códigos'???
Si pones un ejemplo...
Gracias y saludos