Crear tabla de datos recopilados al buscar y copiar palabra de una celda y copiar tambien celtas contiguas

Necesito una fórmula que me busque en un área determinada una palabra en concreto que la vamos a llamar “manzana”, y que me la copie en una celda, pero que además me copie la celda que está a su derecha y las 8 celdas que están a su izquierda con los datos que contenga. Pero comentar que no se trata de un solo cuadro en el que puede encontrar esa palabra sin repetir, sino que esta muchas veces repetidas con valores distintos. Pues bien, lo que quiero es recopilar esas palabras con esos datos y hacer una tabla con todos esos datos que ha encontrado junto a la palabra “manzana”. Se que existe la función “filtrar” pero necesito que esos datos me los recopile de una forma automática y que me los recopile uno tras otro sin dejar espacios entre medio de cada fila.

1 respuesta

Respuesta

Esta macro podría ayudarle en buscar el dato y copiar a otra hoja, actualice el nombre de su hoja de datos, el dato a buscar (en la macro el dato a buscar esta en la celda B1) y las columnas donde esta el dato buscado así como las celdas adyacentes a copiar. Cualquier cosa comenta.

Sub buscar()
Dim buscar As String
Set M = Sheets("Hoja1")
uf = M.Cells(Rows.Count, 8).End(xlUp).Row + 1
buscar = Range("B1").Value
    For i = 3 To uf
        If M.Cells(i, 8).Value = buscar Then
            col1 = M.Cells(i, 1).Value
            col2 = M.Cells(i, 2).Value
            col3 = M.Cells(i, 3).Value
            col4 = M.Cells(i, 4).Value
            col5 = M.Cells(i, 5).Value
            col6 = M.Cells(i, 6).Value
            col7 = M.Cells(i, 7).Value
            col8 = M.Cells(i, 8).Value
            col9 = M.Cells(i, 9).Value
            Set T = Sheets("Tabla")
            uft = T.Cells(Rows.Count, 1).End(xlUp).Row + 1
            T.Cells(uft, 1).Value = col1
            T.Cells(uft, 2).Value = col2
            T.Cells(uft, 3).Value = col3
            T.Cells(uft, 4).Value = col4
            T.Cells(uft, 5).Value = col5
            T.Cells(uft, 6).Value = col6
            T.Cells(uft, 7).Value = col7
            T.Cells(uft, 8).Value = col8
            T.Cells(uft, 9).Value = col9
        End If
    Next i
End Sub

Gracias por contestar Tor Cheer. Comentarte que tengo algo de conocimiento, pero en ésto de las macros en modo "configuración" no tengo conocimiento. Sé grabar una macro y ejecutarla, pero no interpretar y modificar su configuración. ¿Me podría dar más información de como crearla o alguna otra solución? Gracias de antemano.

Si comparte una copia de su archivo para poder ayudarle

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas