Comparar valores de las columnas en las celdas de Microsoft Excel

Pero tengo una duda, cada vez que comparo las celdas de hoja1 con hoja2 me arroja como resultado hasta los espacios en blanco.
Otra cosa, lo que yo quiero hacer es que una columna de 10 valores, se compare con todos los valores de una columna de la hoja2 y me arroje resultados si es que encuentra igualdad...
Mi problema es que me compara solo con la celda que se encuentra a su altura y no con todas, otro problema es que no son 10 valores sino cerca de 300 por ello no lo hago por el camino largo (de uno por uno)
Gracias.

1 Respuesta

Respuesta
1
Okey, Te pongo el código necesario para comparar las celdas de la columna A de la hoja1 con las celdas de la columna A de la hoja2. Cuando exista coincidencia, esta se te indicara en la hoja 1 horizontalmente indicando en que fila de la hoja2 ha encontrado coincidencia.
No deben existir espacios en blanco en los listados. El numero de elementos de cada columna es indiferente, la macro sigue buscando y comparando hasta que encuentre un espacio en blanco (fin del listado).
Sub Comparar_hoja1_vs_hoja2()
Dim Punt_Y_Hoja1 As Long
Dim Punt_X_Hoja1 As Integer
Dim Punt_Y_Hoja2 As Long
Punt_Y_Hoja1 = 1
Do While Worksheets("HOJA1").Cells(Punt_Y_Hoja1, 1) <> ""
Punt_X_Hoja1 = 2
Punt_Y_Hoja2 = 1
While Worksheets("HOJA2").Cells(Punt_Y_Hoja2, 1) <> ""
If Worksheets("HOJA1").Cells(Punt_Y_Hoja1, 1) = Worksheets("HOJA2").Cells(Punt_Y_Hoja2, 1) Then
'Indicar aqui lo que se desea hacer cuando ocurra una coincidencia
Worksheets("HOJA1").Cells(Punt_Y_Hoja1, Punt_X_Hoja1) = Punt_Y_Hoja2
Punt_X_Hoja1 = Punt_X_Hoja1 + 1
End If
Punt_Y_Hoja2 = Punt_Y_Hoja2 + 1
Wend
Punt_Y_Hoja1 = Punt_Y_Hoja1 + 1
Loop
End Sub
Parte de este código para reescribirlo de modo que se adapte a tus necesidades.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas