Comparar columnas de dos hojas diferentes por un criterio

Tengo un libro de Excel con dos hojas diferentes.

Ambas hojas tienen las mismas columnas pero pueden aumentar o disminuir la cantidad de filas en las hojas existentes.

Supongamos que tenemos en la Hoja 1 y en la Hoja 2 las columnas A y B.

Lo que quiero es poder comparar las columnas B de las Hojas 1 y 2 filtradas por la columna A.

Es decir, como ejemplo:

En Hoja 1 tengo:

En Hoja 2 tengo:

Lo que quiero es poder comparar ambas hojas por la columna A y que finalmente en la Hoja 2 me señale las filas diferentes en la columna B comparando cada fila igual en ambas hojas con criterio en A. El resultado para este ejemplo quedaría:

Por favor si me pudieran ayudar con una macro que haga lo que quiero.

1 respuesta

Respuesta

.02/09/16

Hola, Saylis

Me parece que es la típica aplicación de la función BUSCARV(), sobre todo por la existencia de un ID común en la columna A

Empezamos simple, primero hay que buscar el valor de la Hoja 1 para comparlo con el de Hoja 2.

Para ello, escribe ésta fórmula en la celda C1 de la Hoja 2 :

 =BUSCARV($A1;Hoja1!$A$1:$G$1240;2;FALSO)

Tené en cuenta si usás comas o punto y coma para separar los argumentos. Yo usé ";" en este ejemplo. Asignale el formato deseado y, luego, copia esta celda y pegala en las restantes de esta misma columna.

Entonces, la función Buscarv necesita tres argumentos más un cuarto opcional.

El primero es el valor que se busca en la base; ésta, a su vez, es el segundo argumento de la fórmula. El uso del signo $ es para que siempre se refiera a ese rango aún copiando la fórmula a otras celdas/hojas.

El tercer argumento indica qué columna de la base indicada debe ser mostrada donde está la fórmula. Cómo intento mostrar las descripciones, indiqué la columna 7, para que traiga el dato de "Valor nuevo". Si te fijas en la imagen verás que coloqué el número correspondiente a cada columna. Si pegas esta fórmula en otra celda y cambias el número de columna, traerá lo que haya en ella.

Finalmente el cuarto argumento opcional, cuando está en 0 (Falso) obliga a una búsqueda exacta de lo que está en la celda A4. Si no encuentra ese código, la fórmula devolverá #N/A! (No disponible)

Hasta aquí solo trajiste los valores de la hoja 1 a la hoja 2, falta que se marquen las celdas diferentes. Y aquí puede pasar que encuentre el código con valor igual o diferente o que no encuentre el código en Hoja 1.

Para marcar estas dos últimas situaciones, podés usar Formato Condicional.

Seleccioná las celdas de la columna B y hacé click en ese Botón del Menú Inicio y elige Administrar reglas. Fijate en esta captura.

Te aparecerá una ventana como la más ancha de abajo donde tenés que hacer click en Nueva regla... para que salga la ventana de arriba donde le escribirás la condición: =$B1<>$C1 y con el botón Formato elegí el que quieras para el caso de que sean valores distintos.

Nueva Regla... de nuevo y tipeá lo siguiente =ESNOD($C1) y le dás el formato para este caso que corresponde a algún código que no está en Hoja 1 y, por tanto, no tiene valor.

Asegurate -en ambos casos- que la casilla "Se aplica a" comprenda a todo el rango donde querés que se aplique el formato de colores.

Luego Aceptar y tendrá funcionando el control que buscabas.

Más largo de explicar que de hacer.

Bien, Saylisi, espero que esto te sirva para resolver tu problema (sobre todo a esta hora).

Cualquier duda, volvé a consultarme.

Saludos

Fernando

(Buenos Aires, Argentina)

.

.

Buenas

Si hubieses tenido la oportunidad de probar la solución, espero que te haya ayudado a resolver tu problema.

Si así fuera, agradeceré un comentario y que la valorices para finalizarla.

Saludos!

Fernando

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas