Macro que repita una misma función pero cogiendo cada vez una celda

Me gustaría crear una macro que llevo un rato intentando crear y no consigo que funcione como quiero

Te pongo en situación: Tengo un excel con dos hoja, en la primera hay una base de datos de personas (en cada fila esta el código de una persona y una serie de datos), y en la segunda hoja metes en una casilla el código de la persona y me saca una plantilla de cada persona tomando todos los datos de la persona.

Quiero hacer una macro que me vaya copiando los códigos de las persona de la hoja 1 y los vaya pegando en la casilla indicada en la hoja 2 para que me genere la plantilla, que me guarde la plantilla en un pdf, y que vuelva a la hoja uno a coger el siguiente cogido lo copie y lo pegue en la hoja dos para que cree la plantilla, vuelva a crear un pdf... Así hasta que se acaben los códigos que hay en la hoja 1 (que será un número conocido)

2 Respuestas

Respuesta
2

Te anexo la macro, tienes que cambiar en la macro los siguientes datos:

"Hoja1" por el nombre de tu hoja con la base de datos

"Hoja2" por el nombre de tu hoja planilla

"B" Por la columna en donde tienes los códigos

2 por la fila en donde empiezan los códigos

"D2" por la celda de la hoja planilla en donde quieres poner el códgio.

La macro te genera el PDF de cada código y lo guarda en la misma carpeta en donde tienes el archivo con la macro, por nombre le pone el código de la persona.

Sub Planilla()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1") 'base de datos
    Set h2 = Sheets("Hoja2") 'planilla
    col = "B"                'columna de código de persona
    ini = 2                  'fila inicial de código de persona
    des = "D2"               'Celda destino en la planilla
    '
    ruta = ThisWorkbook.Path & "\"
    '
    For i = ini To h1.Range(col & Rows.Count).End(xlUp).Row
        h2.Range(des) = h1.Cells(i, col)
        nombre = h1.Cells(i, col)
        h2.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:=ruta & nombre & ".pdf", _
            Quality:=xlQualityStandard, IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, OpenAfterPublish:=False
    Next
End Sub

Sigue las Instrucciones para un botón y ejecutar la macro

  1. Abre tu libro de Excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la macro
  5. Ahora para crear un botón, puedes hacer lo siguiente:
  6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
  7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
  8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona: Tamaño y Propiedades. En la ventana que se abre selecciona la pestaña: Propiedades. Desmarca la opción “Imprimir Objeto”. Presiona “Cerrar”
  9. Vuelve a presionar click derecho dentro de la imagen y ahora selecciona: Asignar macro. Selecciona: Planilla
  10. Aceptar.
  11. Para ejecutarla dale click a la imagen.

Saludos. Dante Amor

No olvides valorar la respuesta.

Respuesta

¿Sabes cómo hacer la macro para 1 solo registro?

A eso agrega un ciclo (puede ser "For" o "Do While")

No es mi estilo dar la respuesta completa de este tipo de preguntas, pero si más o menos la encaminas, vamos viendo como dejarla lista.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas