Me podrías decir si en ambas hojas los códigos son iguales, ¿por ejemplo colocaste que en una hoja dice cinta y en la otra igual? Si es asi lo que puedes hacer una macro que te solicite la columna y realice un buscarv o un do while para que compare, ejemplo
Sub x()
Dim columna As Integer
On Error Resume Next
columna = InputBox("Ingrese Columna", "Ingrese", "")
If Err <> 0 Then
Exit Sub
End If
' Te colocas en la celda que deseas llenar donde se inician los datos
filainicio= activecell.row
sheets("Hoja1").select
filadia = range("A65300").end(xlup).row
sheets("Hoja2").select
filames = range("A65300").end(xlup).row
'Esta formula es el famoso buscarv que te buscara la info dela hoja 2 en la hoja 1
' Obviamente debes ajustarla segun las fila que utilices
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(Hoja2!R" & filainicio & "C" & columna & ",Hoja1!R2C1:R" & filadia & "C2,2,0)"
'Esta parte te pegara la formula en todas las celdas hacia abajo
Selection.AutoFill Destination:=Range(cells(filainicio,columna),cells(filames,columna))
Range(cells(filainicio,columna),cells(filames,columna)).Select
Range(cells(filainicio,columna)).Select
columns(columna & ":" & columna).select
selection.copy
' Porque pegar los valores porque quedaran algunos # n/a entonces los reemplazaremos por nada
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False
Application.CutCopyMode = False
columns(columna & ":" & columna).select
Selection.Replace What:="#N/A", Replacement:="""""", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False
Range(cells(filainicio,columna)).Select
End Sub
Cualquier cosa me consultas, trate de explicar lo mejor posible.