Copiar datos de una hoja a otra en una plantilla determinada usando macros

Tengo una hoja que se llama "PLA1", en ella se encuentran los datos personales, ingresos y egresos de los trabajadores de una municipalidad, en esta hoja se realizan los cálculos para el pago de salarios de los trabajadores.

Para imprimir la planilla correspondiente de los trabajadores, estos datos se pasan a otra hoja que para los efectos del caso se llama “N1”, en ella se copian los datos de una fila de la hoja “PLA1” utilizando fórmulas como “BUSCARV” para rellenar un registro de la hoja “PLA1” en la hoja “N1”, esta información copiada abarca desde B10 hasta B18 y tiene un formato particular tal como se puede apreciar en la imagen 2, esta búsqueda y rellenado de datos se realiza correctamente, es el caso que a veces se retira algún trabajador e ingresan 2, 3, 9, indistintamente, es decir es dinámico.

Yo quisiera que me apoyen a realizarlo con macros, es decir al hacer clic en un botón, esta hoja llamada “N1” se rellene con la totalidad de trabajadores. Gracias anticipadas por la atención y en espera de vuestro apoyo me despido.

1 respuesta

Respuesta
1

H o l a:

Envíame tu archivo, la hoja "N1" deberá venir vacía, es decir, solamente con el formato. En otra hoja "x" me pones cómo debería quedar después de presionar el botón.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Vicente Quispe Gonzalez” y el título de esta pregunta.

Dante te estoy enviando el archivo.

Gracias anticipadas por el apoyo, me lo reenvías a mi correo.

H o l a:

Esta es la macro para generar la hoja N1

Sub GenerarN1()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Set h1 = Sheets("PLA1")
    Set h2 = Sheets("N1")
    Set h3 = Sheets("FORMATO")
    '
    h2.UsedRange.Offset(9, 0).ClearContents
    i = 17
    j = 10
    Do While h1.Cells(i, "B") <> ""
        h3.[B10] = h1.Cells(i, "B")
        h3.Rows("10:18").Copy
        h2.Cells(j, "A").PasteSpecial xlValues
        j = j + 9
        i = i + 1
    Loop
    Application.ScreenUpdating = True
    h2.Select
    MsgBox "Hoja N1 generada", vbInformation, "GENERAR N1"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas