Una macro que me busque un valor de una celda y como de resultado me de varios valores de esa fila

Que tal buena tarde solicito de su ayuda para que me ayuden a modificar este código ya que quiero que encuentre un valor en otra hoja pero como de resultado me de los de su fila o más de tres resultado, encontré el siguiente código pero pero solo me da el valor de una celda y quisiera más de una de esa fila en donde encuentre el valor.

Sub BuscarValores()

Dim rBusq As Range

For Each x In Sheets("Hoja1").[b7:B8].Cells 'Aqui pones el rango donde tienes los datos para los que quieres buscar
Set rBusq = Sheets("Hoja2").[A1:d7].Find(x.Value, , , xlWhole) 'Aqui pones el rango donde quieres buscar
If rBusq Is Nothing Then
MsgBox ("Valor no encontrado: " & x.Value)
Else
Sheets("Hoja1").Cells(x.Row, x.Column + 1) = Sheets("Hoja2").Cells(rBusq.Row, 2) 'El 2 es porque quieres el dato que esta en la Columna B
End If
Next x
End Sub

1 respuesta

Respuesta
1

Le falta varias cosas a ese código, mejor explícame con ejemplos qué es lo que necesitas.

¿Qué vas a buscar?

¿Y en dónde quieres los resultados?


O envíame tu archivo y me explicas con un ejemplo lo que necesitas y te preparo la macro.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Juan Carlos Mendoza García” y el título de esta pregunta.

La siguiente macro te trae los valores de la fila, excepto las unidades, ya que no vienen en la hoja respaldo1

Sub TraerDatos()
'Por.Dante Amor
    Set h1 = Sheets("Hoja4")
    Set h2 = Sheets("Respaldo1")
    '
    i = 10
    Do While Cells(i, "B") <> "" Or Cells(i + 1, "B") <> ""
        i = i + 2
    Loop
    '
    Set b = h2.Columns("B").Find(h1.[T3], lookat:=xlWhole, LookIn:=xlValues)
    If Not b Is Nothing Then
        h1.Cells(i, "B") = h2.Cells(b.Row, "C")     'Orden de compra
        h1.Cells(i, "C") = h2.Cells(b.Row, "D")     'Cons
        h1.Cells(i, "D") = h2.Cells(b.Row, "E")     'Rda
        h1.Cells(i, "E") = h2.Cells(b.Row, "F")     'Ent
        h1.Cells(i + 1, "I") = h2.Cells(b.Row, "G") 'cantidad
        'h1.Cells(i+1, "J") = h2.Cells(b.Row, "C")  'unidad
        h1.Cells(i + 1, "L") = h2.Cells(b.Row, "H") 'Fecha
        h1.Cells(i + 1, "N") = h2.Cells(b.Row, "I") 'Precio
        h1.Cells(i, "P") = h2.Cells(b.Row, "J")     'Factura
        h1.Cells(i, "Q") = h2.Cells(b.Row, "K")     'Lote
    Else
        MsgBox "Número de folio no existe", vbExclamation
    End If
End Sub

Saludos.Dante Amor

Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas