VBA modificar macro comparar rangos
Tengo esta macro que compara dos rangos que "están en la misma hoja":
Sub COMPARE_VARIAS_COLUMNAS()
Dim Column1 As Range
Dim Column2 As Range 'Pide al usuario el primer rango de columnas a comparar...
''''''''''''''''----------------------------------------------------
Set Columna1 = Application.InputBox("Selecciona la PRIMERA columna a comparar", Type:=8)
'Revisar que el rango que haya capturado consista en solamente 1 columna...
If Columna1.Columns.Count > 1 Then
Do Until Columna1.Columns.Count = 1
MsgBox "Solamente puedes seleccionar 1 columna"
Set Columna1 = Application.InputBox("Selecciona la PRIMERA columna a comparar", Type:=8)
Loop
End If
'Pide al usuario el segundo rango de columnas a comparar...
Set Columna2 = Application.InputBox("Selecciona la SEGUNDA columna a comparar", Type:=8)
'Revisa que el rango consista en solamente 1 columna...
If Columna2.Columns.Count > 1 Then
Do Until Columna2.Columns.Count = 1
MsgBox "Solamente puedes seleccionar 1 columna"
Set Column2 = Application.InputBox("Selecciona la segunda columna a comparar", Type:=8)
Loop
End If 'REVISA QUE AMBOS RANGOS DE COLUMNAS SEAN DEL MISMO TAMAÑO...
If Columna2.Rows.Count > Columna1.Rows.Count Then
Do Until Columna2.Rows.Count = Columna1.Rows.Count
MsgBox "La segunda columna debe tener el mismo tamaño que la primera"
Set Columna2 = Application.InputBox("Selecciona la segunda columna a comparar", Type:=8)
Loop
End If 'Si las columnas enteras han sido seleccionadas (e.g. $AA), limita los tamaños del
'rango al tamaño de la hoja activa. Esto evita que la rutina revise la hoja completa innecesariamente.
If Columna1.Rows.Count = 65536 Then
Set Columna1 = Range(Columna1.Cells(1), Columna1.Cells(ActiveSheet.UsedRange.Rows.Count))
Set Columna2 = Range(Columna2.Cells(1), Columna2.Cells(ActiveSheet.UsedRange.Rows.Count))
End If
'Realiza la comparación y cambia las celdas iguales a color amarillo.
Dim interiorCellda As Long
For interiorCellda = 1 To Columna1.Rows.Count
If Columna1.Cells(interiorCellda) < Columna2.Cells(interiorCellda) Then 'Si COL 1 ">", "<", "=", "<>"a COL 2
'Columna1.Cells(interiorCellda).Interior.Color = vbGreen 'Yellow 'Para que solo pinte la columna 2
Columna2. Cells(interiorCellda). Interior. Color = RGB(189, 255, 189) 'vbGreen 'Yellow 'solo pintara la columna 2 si se cumple la condición
End If
Next
End sub
Desearia que la macro me permita seleccionar un rango pero de "cualquier hoja de otro libro" y continuar con la comparación del rango seleccioando.