Buscar el contenido de una celda en varias Hojas

El registro se puede encontrar varias veces en una misma hoja
Gracias

1 Respuesta

Respuesta
1
¿No entendí la pregunta me puedes dar más detalles?
Cesar: quiero adrte las gracias por el interés que tienes en ayudarme.
Con respecto a la pregunta quiero contarte cual es mi problema para ver si así soy más claro.
En la empresa donde trabajo, los proveedores me envían sus listas de precios a través del correo electrónico en formato Excel.
Lo que quiero es crear un formulario, en el cual yo digite alguna referencia de producto, y se realice una búsqueda de esta referencia en cada una de las hojas que me han enviado los poroveedores, si la encuentra, que me muestre la información de está, como precio, etc.
Te agradezco la colaboración que me puedas prestar.
Saludos
Gabomazo
Como vas, bueno hice un pequeño procedimiento para lo que me pides copiando algunas cosas de las ayudas de Visual que siempre son útiles, te cuento como funciona: se supone que tienes copiadas en un libro todas las hojas que te envían tus proveedores con las informaciones de referencias, precios, etc y que en la Hoja4 de tu libro (Este nombre lo puedes cambiar en la macro)vas a obtener un resumen de la búsqueda en todas las hojas del libro de la referencia deseada, las búsquedas y los resultados se harán en los rangos escritos en la macro (también se pueden modificar).
Al final lo que te arrojará en la hoja4 del libro será una especie de titulo que te dice que buscaste y en las celdas de abajo al nombre de la hoja donde lo encontró(supongo que será el nombre del proveedor), el valor a la derecha y el de más a la derecha de cada vez que lo encuentre (supongo algo así como precio y forma de pago)
Ensayalo y cualquier cosa me cuentas.
Sub VariasHojas()
Dim buscar
Dim texto As String, titulo As String
texto = "Digite el valor que desea buscar"
titulo = "Busqueda en todas las hojas del libro"
buscar = InputBox(texto, titulo)
If buscar = "" Then Exit Sub
Dim fila As Integer
fila = 2
Worksheets("Hoja4").Select
Range("A1:D20").Select
Selection.ClearContents
ActiveCell.Value = "Resultados para la busqueda de " & buscar
For Each hoja In Sheets
With hoja.Range("A2:A10")
Set esta = .Find(buscar, LookIn:=xlValues)
If Not esta Is Nothing Then
primeracelda = esta.Address
ActiveCell.Offset(fila, 0).Value = hoja.Name
ActiveCell.Offset(fila, 1).Value = esta.Offset(0, 1).Value
ActiveCell.Offset(fila, 2).Value = esta.Offset(0, 2).Value
fila = fila + 1
Do While Not esta Is Nothing And esta.Address <> primeracelda
ActiveCell.Offset(fila, 0).Value = hoja.Name
ActiveCell.Offset(fila, 1).Value = esta.Offset(0, 1).Value
ActiveCell.Offset(fila, 2).Value = esta.Offset(0, 2).Value
fila = fila + 1
Loop
End If
End With
Next hoja
End Sub
Espero que sea lo que necesitas, si no entendí algo o tienes algún problema pregunta que con mucho gusto te ayudaré desde que pueda, si de lo contrario, la respuesta te satisface, te agradezco la finalices con una calificación acorde con la calidad y oportunidad de la misma.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas