Validar Celda para que no se agreguen registros duplicados con VBA
Tengo una macro no logro hacer que valide todos los datos del rango D9:D23 y que no sean iguales a los que tengo en otra hoja denominada BD, a su vez que si no ingreso datos en todas las filas si no hasta una determinada los capture y los guarde siempre y cuando ya no estén registrados en BD, sean numéricos y que las celdas no estén vacías.
Sub Validar()
Set h1 = Sheets("Registros")
Set h2 = Sheets("BD")
If h1.[D9] = "" Then
MsgBox "Falta colocar el numero de Factura", vbExclamation, "GUARDAR FACTURA"
Exit Sub
End If
Set a = h2.Columns("A").Find(h1.[D9], lookat:=xlWhole)
If Not a Is Nothing Then
MsgBox "El N° de Factura ya existe", vbCritical, "GUARDAR FACTURA"
Exit Sub
End If
transferirDatosOtraHoja
End Sub