Comparar 2 filas para luego mostrar datos faltantes
Se tiene una hoja tal como se muestra a continuación:
ColA ColB ColC ColD ColE ColF ...
Fila 1 Juan Pedro Pablo Felipe Cristobal Eduardo
Fila 2 Juan Felipe
En dicha hoja se pueden apreciar datos en la Fila 1 y en la Fila 2 en donde hay una lista de nombres. La idea es que luego de ejecutar la macro, ésta me entregue como resultado los nombres faltantes en la Fila 2.. Poniéndolos uno a uno en las columnas que le siguen ..
El resultado final se debería ver de la siguiente forma:
ColA ColB ColC ColD ColE ColF ...
Fila 1 Juan Pedro Pablo Felipe Cristobal Eduardo
Fila 2 Juan Felipe Pedro Pablo Crostobal Eduardo
He intentado de hacerlo mediante varias funciones pero he fracasado ya en varios intentos. Te adjunto un código relacionado para que me ayudes desde éste para que salga más fácil y rápida tu ayuda, de antemano muchas gracias.
Sub nombres()
Sheets("Hoja1").Select
Range("A1").Select
While ActiveCell.Value <> ""
nombre1 = Range("A1").Value
Range("A2").Select
While ActiveCell.Value <> ""
nombre2 = ActiveCell.Value
If nombre1 = nombre2 Then
Else
Range("A2").Offset(0, 1).End(xlToRight) = nombre1
End If
Wend
ActiveCell.Offset(0, 1).Select
Wend
End Sub
ColA ColB ColC ColD ColE ColF ...
Fila 1 Juan Pedro Pablo Felipe Cristobal Eduardo
Fila 2 Juan Felipe
En dicha hoja se pueden apreciar datos en la Fila 1 y en la Fila 2 en donde hay una lista de nombres. La idea es que luego de ejecutar la macro, ésta me entregue como resultado los nombres faltantes en la Fila 2.. Poniéndolos uno a uno en las columnas que le siguen ..
El resultado final se debería ver de la siguiente forma:
ColA ColB ColC ColD ColE ColF ...
Fila 1 Juan Pedro Pablo Felipe Cristobal Eduardo
Fila 2 Juan Felipe Pedro Pablo Crostobal Eduardo
He intentado de hacerlo mediante varias funciones pero he fracasado ya en varios intentos. Te adjunto un código relacionado para que me ayudes desde éste para que salga más fácil y rápida tu ayuda, de antemano muchas gracias.
Sub nombres()
Sheets("Hoja1").Select
Range("A1").Select
While ActiveCell.Value <> ""
nombre1 = Range("A1").Value
Range("A2").Select
While ActiveCell.Value <> ""
nombre2 = ActiveCell.Value
If nombre1 = nombre2 Then
Else
Range("A2").Offset(0, 1).End(xlToRight) = nombre1
End If
Wend
ActiveCell.Offset(0, 1).Select
Wend
End Sub
1 respuesta
Respuesta de Roberto Alvarado
1