Buscar numero de fila a partir de datos dos columnas en vba

Necesito buscar el numero de fila tal que cumpla la búsqueda en dos columnas para cada datos respectivo, es decir que me pueda encontrar el dato Perro en la columna A siempre y cuando sea Rojo en la columna B

1 Respuesta

Respuesta

Prueba lo siguiente:

Sub test()
  Dim fila
  With Range("A1", Range("A" & Rows.Count).End(3))
    fila = Evaluate("=MIN(IF((" & .Address & "=""Perro"")*(" & .Offset(, 1).Address & "=""Rojo""),ROW(" & .Address & ")))")
    If fila = 0 Then
      MsgBox "No existe la combinación"
    Else
      MsgBox "Número de Fila : " & fila
    End If
  End With
End Sub

Muchas gracias, me sirvió, aunque me surge una duda relacionada, si deseo "perro" y "rojo" sean asignadas a una variable y con esas variables hacer la búsqueda, como se modifica el código

Prueba esto:

Sub test()
  Dim fila As Variant
  Dim var1 As String, var2 As String
  '
  var1 = "Perro"
  var2 = "Rojo"
  '
  With Range("A1", Range("A" & Rows.Count).End(3))
    fila = Evaluate("=MIN(IF((" & .Address & "=""" & var1 & """)*(" & .Offset(, 1).Address & "=""" & var2 & """),ROW(" & .Address & ")))")
    If fila = 0 Then
      MsgBox "No existe la combinación"
    Else
      MsgBox "Número de Fila : " & fila
    End If
  End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas