Macro encontrar valor en columna y copiar otro valor en la fila

No soy capaz de realizar un macro que realice el siguiente proceso:

Necesitaría una macro que copiara de la hoja "CREAR_GRUPO", el valor de la celda "H25" en la última columna libre hacia la izquierda en la fila donde se encuentre el valor de la celda "I11" de la hoja "CREAR_GRUPO" en la hoja "GRUPOS" columna "z".

El algoritmo seria este:

- Buscar el valor de la celda "I11" de la hoja "CREAR_GRUPO" en la columna "Z" de la hoja "GRUPOS".

- En la fila de la hoja "GRUPOS" en la que se encuentre el valor buscado, ir a la última columna vacía hacia la izquierda (hacia "A") y pegar el valor (solo valor, sin formato) de la celda "H25" de la hoja "CREAR_GRUPO".

- Volver a hoja "CREAR_GRUPO".

1 Respuesta

Respuesta
1

Jose García,

Adjunto el código para el desarrollo de tu consulta para su revisión.

Sub EncontrarCopiar()
Sheets("GRUPOS").Select
On Error Resume Next
Fila = Worksheets("GRUPOS").Range("Z:Z").Find(What:=Worksheets("CREAR_GRUPO").Range("I11"), _
        LookIn:=xlValues, MatchCase:=True).Row
Columna = Left(Range("A" & Fila).End(xlToLeft).Address(False, False), 1)
Worksheets("CREAR_GRUPO").Range("H25").Copy
Worksheets("GRUPOS").Range(Columna & Fila).PasteSpecial Paste:=xlPasteValues
End Sub

Espero que te sirva de ayuda y este acorde a tu necesidad. Cualquier consulta estaré pendiente.

Por favor, no olvidar de valorar las respuestas.

Gracias Ander por tu respuesta,

Funciona bien salvo que me pega el valor en lugar de en la ultima celda vacía de la columna donde encuentra el valor, en la ultima celda llena, "fusilandome" el valor anterior. A mi me interesaría que pegará el valor en la celda de la derecha de la ultima con valores.

Gracias.

Saludos.

Jose García,

Adjunto el código modificado para su revisión.

Sub EncontrarCopiar()
Sheets("GRUPOS").Select
On Error Resume Next
Fila = Worksheets("GRUPOS").Range("Z:Z").Find(What:=Worksheets("CREAR_GRUPO").Range("I11"), _
        LookIn:=xlValues, MatchCase:=True).Row
Columna = Left(Range("Z" & Fila).End(xlToLeft).Offset(0, -1).Address(False, False), 1)
Range("A1") = Columna
Worksheets("CREAR_GRUPO").Range("H25").Copy
Worksheets("GRUPOS").Range(Columna & Fila).PasteSpecial Paste:=xlPasteValues
End Sub

Espero ahora si este acorde a tus necesidades. Cualquier consulta estaré atento.

Por favor, no olvidar de valorar las respuestas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas