AutoComparacion de Tablas

21/07/2005 - 18:40 por Compumakro | Informe spam
Amigos de Access
Tengo dos tablas "A" y "B", en la Tabla "A", Columna B tengo 2100 nombres y
sus cifras correspondientes en la Columna C.

En la Tabla "B", otra hoja, mismo archivo, más de 1000 nombres en su mayoría
iguales como en la Tabla "A" con sus cifras correspondientes en la Columna
C.



Necesito reemplazar los datos de la Columna C en la Tabla "A" por los datos
de la Columna C en la Tabla "B".

El caso es que hay disparidad en el orden de las tablas, por lo que no puedo
ordenar de A=>Z y confrontar, porque no coinciden



Es como una "AutoComparación" con "AutoBúsqueda" y Reemplazar. Las que no
Coincidan, quedan igual.

¿Cómo sería eso?



Gracias

Oscar

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
22/07/2005 - 02:38 | Informe spam
hola, Oscar !

Amigos de Access <= menos mal que 'posteaste' en el foro 'indicado' :DD [es broma] ;)

... dos tablas "A" y "B", en la Tabla "A", Columna B tengo 2100 nombres y sus cifras... en la Columna C.
... Tabla "B", otra hoja, mismo archivo, mas de 1000 nombres en su mayoria iguales... Tabla "A" con sus cifras... en la Columna C.
... reemplazar los datos de la Columna C en la Tabla "A" por los datos de la Columna C en la Tabla "B"
... no puedo ordenar de A=>Z y confrontar, porque no coinciden
... una "AutoComparacion" con "AutoBusqueda" y Reemplazar. Las que no Coincidan, quedan igual



suponiendo que la tabla_A esta en la 'hoja1' y que la tabla_B esta en la 'hoja2'...
prueba con la siguiente macro ->supongo tambien que NO habra 'duplicados' dentro de cada listado<- -???-
si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.
en un modulo de codigo 'normal' ==Sub Cambiar_Si_Coincide()
Application.ScreenUpdating = False
Dim Celda As Range, Candidato As Range
With Worksheets("Hoja2")
For Each Celda In .Range(.Range("b2"), .Range("b65536").End(xlUp))
On Error Resume Next
Set Candidato = Worksheets("Hoja1").Columns("b").Find(Celda)
If Not Candidato Is Nothing _
Then Candidato.Offset(, 1) = Celda.Offset(, 1): _
Set Candidato = Nothing
On Error GoTo 0
Next
End With
End Sub
Respuesta Responder a este mensaje
#2 Compumakro
22/07/2005 - 11:55 | Informe spam
Gracias Hector
Cuando no estás en tu día Access disparates..
Bueno, antes de montar tu fórmula presiento discordancia porque sí que hay
repetidos. Y repetidos los nombres y repetidas las cifras y NO se pueden
modificar.
Una Tabla tiene pocos Repetidos y la otra muchísimos.
??????qué hacer???
Gracias
Oscar

"Héctor Miguel" escribió en el mensaje
news:%
hola, Oscar !

Amigos de Access <= menos mal que 'posteaste' en el foro 'indicado'
:DD [es broma] ;)



... dos tablas "A" y "B", en la Tabla "A", Columna B tengo 2100 nombres y
sus cifras... en la Columna C.
... Tabla "B", otra hoja, mismo archivo, mas de 1000 nombres en su
mayoria iguales... Tabla "A" con sus cifras... en la Columna C.
... reemplazar los datos de la Columna C en la Tabla "A" por los datos de
la Columna C en la Tabla "B"
... no puedo ordenar de A=>Z y confrontar, porque no coinciden
... una "AutoComparacion" con "AutoBusqueda" y Reemplazar. Las que no
Coincidan, quedan igual



suponiendo que la tabla_A esta en la 'hoja1' y que la tabla_B esta en la
'hoja2'...
prueba con la siguiente macro ->supongo tambien que NO habra 'duplicados'
dentro de cada listado<- -???-
si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.
en un modulo de codigo 'normal' ==> Sub Cambiar_Si_Coincide()
Application.ScreenUpdating = False
Dim Celda As Range, Candidato As Range
With Worksheets("Hoja2")
For Each Celda In .Range(.Range("b2"), .Range("b65536").End(xlUp))
On Error Resume Next
Set Candidato = Worksheets("Hoja1").Columns("b").Find(Celda)
If Not Candidato Is Nothing _
Then Candidato.Offset(, 1) = Celda.Offset(, 1): _
Set Candidato = Nothing
On Error GoTo 0
Next
End With
End Sub

Respuesta Responder a este mensaje
#3 Héctor Miguel
22/07/2005 - 22:05 | Informe spam
hola, Oscar !

... antes de montar... presiento discordancia porque si que hay repetidos.
Y repetidos los nombres y repetidas las cifras y NO se pueden modificar.
Una Tabla tiene pocos Repetidos y la otra muchisimos.
??????que hacer???



-> si el caso es que ->cada listado<- tiene 'sus propias repeticiones' [tanto en nombres como cifras]...
y [segun comentas] NO se pueden/deben 'modificar'... [me temo que]...
SOLO queda una -posible- alternativa de solucion...
-> 'decirle' al codigo cual debera ser su 'arbol de decisiones' .)) [es decir]...
habra que 'decidir' [para cada repeticion en cada listado]...
-> CUAL/es se tomara/n como 'bueno/s' ->de donde y hacia donde<-
-> en caso de que sea el mismo numero de 'repeticiones_nombre' en ambos listados... cada quien con su cada cual ?
-> en caso de diferente numero de 'repeticiones_nombre' en ambos listados... -> te lo dejo de tarea ? :))

comentas?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida