ELIMINAR DATOS REPETIDOS

14/05/2004 - 17:08 por Ing. Héctor Montero Sobrado | Informe spam
Hola Amigos.
Quisiera me pudieran ayudar con la siguiente situacion.
Tengo una hoja en la que en la columna A tengo varios Codigos, y algunos de
estos se repiten. quisiera solamente que deje valores únicos.
Pero a su vez, no quiero que elimine cualquier valor, sino que debe de
cumplir con una condición adicional, y es que en la columna B, tengo un
valor de hora de la Transacción.
Si el valor del codigo está repetido y adicionalmente necesito que compare
las horas y elimine la línea con la HORA menor.
Obviamente si el valor no está repetido que lo mantenga, pues puede haber
valores que no se repitan y los necesito.

gracias
pura Vida
HMS

Preguntas similare

Leer las respuestas

#11 Héctor Miguel
19/05/2004 - 03:33 | Informe spam
hola, Manuel ! =>perdon<= :)) el anterior... 'se me chispotio' :))

[tal parece que... ] 'compartimos' -algunas- ideas en cuanto a 'funcionalidad' de access y excel ;)
['aunque'...] tenemos algunas 'diferencias' [quizas por 'interpretacion'] en lo tocante a esta 'consulta' :(
tratando de ser 'breve'...

como 'punto de partida', es decir... de la consulta de HMS [al menos, asi lo 'entendi'] 'se entiende' que...
se necesita =>eliminar<= [y supongo yo que -de preferencia-... en 'una sola pasada']...
=>todas<= las filas que 'correspondan' a los codigos 'repetidos' =>'siempre y cuando' y... 'SI' Y SOLO 'SI'...<=...
=>SI la 'hora de transaccion'<= [de esas 'repeticiones'] es 'anterior' a la 'mas reciente registrada' [para ese codigo]
[lo cual 'nos deja' que el resultado que 'se busca' es...]
=>DEBERA 'quedar' un listado con 'solamente'...
=>UN registro 'unico' [para cada codigo]... =>el que corresponda a la hora 'mas reciente' registrada<
lo anterior fue mi 'preocupacion a cubrir' [por lo que no me 'cuadraba' la propuesta de la 'simple consulta' -en access-]
y fue por lo mismo que hacia las preguntas de...
1> ... si hubiera 2, 10 o mas 'repeticiones' en 2, 10 o mas codigos ...
2> ... ¿cuantas consultas mas tengo que hacer hasta 'agotar' los 'repetidos'?
3> ... ¿que mas -aparte de la consulta- tendria que hacer para eliminar TODOS los 'minimos' [segun condiciones]?
4> ... ¿como me 'aseguro' que el minimo 'encontrado' NO 'coincida' con =>el unico<= registro de algun codigo?

- al respecto de las 'preguntas' 1 y 2, comentas lo siguiente... -
No importa cuantas repeticiones haya ... la consulta se encarga de agruparlos por ... codigo
... saca el minimo valor de hora para ese codigo, no hay que hacer mas consultas
... los organiza y devuelve el listado de registros unicos de codigo y hora minima.




=>[aqui... 'debo insistir' en que...]
la 'consulta' [¿query?] en access... 'devuelve' =>UN<= codigo [de cada uno]... el de la hora 'minima'
¡ SI !!!... 'pero'... =>solo uno<= [de cada 'grupo' de codigos] INCLUIDO... 'el unico'
=>y... despues de que 'me digas'... ¿como =>los elimino<= de la base de datos? =>'respetando al unico'<= ...
=>SI es 'necesario' hacer 'X' consultas mas... hasta 'agotar' los repetidos [de cada codigo] :((

- al respecto de la 'pregunta' 3, comentas... -
No te entiendo esta pregunta.




=>[creo que es 'sencilla'] segun yo... la 'simple consulta' =>por si sola<= NO 'basta'...
¿como =>los elimino<= de la base de datos? =>'respetando al unico'< en 'otras palabras'... ¿que acciones hacen falta para la 'terminacion' de lo solicitado? =>eliminar registros< [para poder 'comparar' la 'simple consulta' en access versus el 'rebuscado' procedimiento propuesto en excel]

- y para la 'pregunta' 4 comentas que... -
Asi debe ser, cuando el registro sea unico ... el minimo es el mismo valor unico, que es lo que desea HMS.




=>[creo que] 'aqui' es donde la 'interpretacion'... 'difiere' :(
si existe un registro =>unico<=... NO debe ser =>incluido<= como el de la 'hora minima' =>'eliminable'<= ;)

['debo insistir' -nuevamente- en que...]
la 'sencillez' que se le ha tratado de dar como 'ventaja' de access [sobre excel]...
[al menos, para el caso que se ha planteado] NO es 'tal', NI 'tan sencillo y simple' :(

tambien debo 'confesarte' que estoy 'en total acuerdo' contigo en lo siguiente...
... cada mico a su palo, en este caso excel le pisa la manguera al access [...]
... para mi excel es la mejor herramienta ... lo que no tiene, se le programa y listo
... aunque se pueda matar moscas a cañonazos (este no es el caso)
... no quiere decir que no hayan herramientas para hacerlo mas facil.
... en algunos casos (como antes, en los mas complejos) access es mejor.
Y tampoco es que access sea la panacea, ese tambien tiene sus falencias
(con el perdon de los genios de access, es que lo conozco muy bien del todo)



y 'en desacuero' con lo siguiente...
... la consulta es mas sencilla en access [...]



y ya que nos estamos 'confesando'... [y tampoco 'espero' la 'aprobacion' de los usuarios de access] :((
si consideramos una 'simple' base de datos 'lineal', +/- sin tener en cuenta el tamaño, que NO necesite ser =>correlacionada<=...
[yo] ¡ prefiero excel. !!! :))
[1] excel tiene excelentes capacidades de base de datos
[2] los programas de bases de datos [como access] no tienen ni la mitad de la 'amigabilidad' que tiene excel para el usuario
[3] puedes hacer [practicamente] 'de todo' en excel
[4] access [para mi] no es tan facil de manejar y no me parece [por mucho] tan 'logicamente simple' como excel
[me parece 'indudable' que...]
- en 'el gran derby de kentucky' [de las bases de datos], access [o 'cualquiera' otra] ... gana por 'varios cuerpos' :((
- pero en otros [muchos] casos, excel gana por ... [bastante mas que] 'un largo de nariz' ;)

creo que ahora el que se ha excedido... soy yo :((
saludos,
hector.

p.d. corri pruebas en access y... <\°-°/> ... 'se requieren mas consultas' [hasta 'agotar' los 'repetidos'] :((
Respuesta Responder a este mensaje
#12 Manuel Romero
19/05/2004 - 19:09 | Informe spam
Me ha parecido muy interesante este tema Hector

"Héctor Miguel" escribió en el mensaje
news:eR8$
hola, Manuel ! =>perdon<= :)) el anterior... 'se me chispotio' :))

[tal parece que... ] 'compartimos' -algunas- ideas en cuanto a


'funcionalidad' de access y excel ;)
['aunque'...] tenemos algunas 'diferencias' [quizas por 'interpretacion']


en lo tocante a esta 'consulta' :(
tratando de ser 'breve'...




Como te dije antes, me parece muy interesante comparar puntos de vista
diferentes (aunque no tan diferentes al fin y al cabo)

como 'punto de partida', es decir... de la consulta de HMS [al menos, asi


lo 'entendi'] 'se entiende' que...
se necesita =>eliminar<= [y supongo yo que -de preferencia-... en 'una


sola pasada']...
=>todas<= las filas que 'correspondan' a los codigos 'repetidos'


=>'siempre y cuando' y... 'SI' Y SOLO 'SI'...<=...
=>SI la 'hora de transaccion'<= [de esas 'repeticiones'] es 'anterior' a


la 'mas reciente registrada' [para ese codigo]
[lo cual 'nos deja' que el resultado que 'se busca' es...]
=>DEBERA 'quedar' un listado con 'solamente'...
=>UN registro 'unico' [para cada codigo]... =>el que corresponda a la hora


'mas reciente' registrada<>
lo anterior fue mi 'preocupacion a cubrir' [por lo que no me 'cuadraba' la


propuesta de la 'simple consulta' -en access-]
y fue por lo mismo que hacia las preguntas de...
1> ... si hubiera 2, 10 o mas 'repeticiones' en 2, 10 o mas codigos ...
2> ... ¿cuantas consultas mas tengo que hacer hasta 'agotar' los


'repetidos'?
3> ... ¿que mas -aparte de la consulta- tendria que hacer para eliminar


TODOS los 'minimos' [segun condiciones]?
4> ... ¿como me 'aseguro' que el minimo 'encontrado' NO 'coincida' con


=>el unico<= registro de algun codigo?

- al respecto de las 'preguntas' 1 y 2, comentas lo siguiente... -
>> No importa cuantas repeticiones haya ... la consulta se encarga de


agruparlos por ... codigo
>> ... saca el minimo valor de hora para ese codigo, no hay que hacer mas


consultas
>> ... los organiza y devuelve el listado de registros unicos de codigo y


hora minima.
=>[aqui... 'debo insistir' en que...]
la 'consulta' [¿query?] en access... 'devuelve' =>UN<= codigo [de cada


uno]... el de la hora 'minima'
¡ SI !!!... 'pero'... =>solo uno<= [de cada 'grupo' de codigos]


INCLUIDO... 'el unico'
=>y... despues de que 'me digas'... ¿como =>los elimino<= de la base


de datos? =>'respetando al unico'<= ...
=>SI es 'necesario' hacer 'X' consultas mas... hasta 'agotar' los


repetidos [de cada codigo] :((

Ya entendi tu pregunta, lo que pasa es que se deben distiguir (en access)
dos escenarios,

1) yo quiero ver el/los registros de la hora minima, pero sin modificar mi
tabla de datos, en ese caso un select como el que escribi resuelve la
situacion. es como hacer un filtro avanzado en otra celda sin modificar la
tabla original.

2) yo quiero eliminar los registros de mi tabla, en ese caso se utiliza otro
tipo de consulta que seria un poco mas compleja, pero igual se puede hacer.

Debe ser algo asi: si tomo la consulta original y la guardo con un nombre,
digamos MINHORA, la consulta seria mas o menos asi (toca probarla, pero esa
es la idea)

DELETE FROM TABLA WHERE MINHORA.CODIGO=TABLA.CODIGO AND HORA>MINHORA.HORA

que significa, borre los registro de la tabla TABLA donde tenga el mismo
codigo de la tabla resumen y la hora sea mayor que la hora minima obtenida
antes.


Ambos casos devuelven lo mismo, la tabla con los registros interesados, solo
que en el primer caso no estoy modificando la tabla original (que en algunos
casos eso me puede interesar).


- al respecto de la 'pregunta' 3, comentas... -
>> No te entiendo esta pregunta.
=>[creo que es 'sencilla'] segun yo... la 'simple consulta' =>por si


sola<= NO 'basta'...
¿como =>los elimino<= de la base de datos? =>'respetando al unico'<> en 'otras palabras'... ¿que acciones hacen falta para la 'terminacion'


de lo solicitado? =>eliminar registros<> [para poder 'comparar' la 'simple consulta' en access versus el
'rebuscado' procedimiento propuesto en excel]




Creo que el punto 2 anterior lo resuelve y para nada aplica el termino
"rebuscado procedimiento en excel", asi es como puede hacerse con las
herramientas que el programa provee.

- y para la 'pregunta' 4 comentas que... -
>> Asi debe ser, cuando el registro sea unico ... el minimo es el mismo


valor unico, que es lo que desea HMS.
=>[creo que] 'aqui' es donde la 'interpretacion'... 'difiere' :(
si existe un registro =>unico<=... NO debe ser =>incluido<= como el de


la 'hora minima' =>'eliminable'<= ;)




Lo que dice HMS es que si el registro no esta repetido, le deje el valor que
esta, es decir el minimo (es decir, el mismo).

['debo insistir' -nuevamente- en que...]
la 'sencillez' que se le ha tratado de dar como 'ventaja' de access [sobre


excel]...
[al menos, para el caso que se ha planteado] NO es 'tal', NI 'tan sencillo


y simple' :(

tambien debo 'confesarte' que estoy 'en total acuerdo' contigo en lo


siguiente...
> ... cada mico a su palo, en este caso excel le pisa la manguera al


access [...]
> ... para mi excel es la mejor herramienta ... lo que no tiene, se le


programa y listo
> ... aunque se pueda matar moscas a cañonazos (este no es el caso)
> ... no quiere decir que no hayan herramientas para hacerlo mas facil.
> ... en algunos casos (como antes, en los mas complejos) access es mejor.
> Y tampoco es que access sea la panacea, ese tambien tiene sus falencias
> (con el perdon de los genios de access, es que lo conozco muy bien del


todo)

y 'en desacuero' con lo siguiente...
> ... la consulta es mas sencilla en access [...]



Bueno, entre gustos no hay disgustos y decir que uno es mejor que el otro no
es una conclusion a la que podamos (y debamos) llegar.


y ya que nos estamos 'confesando'... [y tampoco 'espero' la 'aprobacion'


de los usuarios de access] :((
si consideramos una 'simple' base de datos 'lineal', +/- sin tener en


cuenta el tamaño, que NO necesite ser =>correlacionada<=...
[yo] ¡ prefiero excel. !!! :))
[1] excel tiene excelentes capacidades de base de datos
[2] los programas de bases de datos [como access] no tienen ni la mitad de


la 'amigabilidad' que tiene excel para el usuario
[3] puedes hacer [practicamente] 'de todo' en excel
[4] access [para mi] no es tan facil de manejar y no me parece [por mucho]


tan 'logicamente simple' como excel
[me parece 'indudable' que...]
- en 'el gran derby de kentucky' [de las bases de datos], access [o


'cualquiera' otra] ... gana por 'varios cuerpos' :((
- pero en otros [muchos] casos, excel gana por ... [bastante mas que] 'un


largo de nariz' ;)




Totalmente de acuerdo contigo

creo que ahora el que se ha excedido... soy yo :((
saludos,
hector.





Para nada
Manuel

p.d. corri pruebas en access y... <\°-°/> ... 'se requieren mas consultas'


[hasta 'agotar' los 'repetidos'] :((

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida