Macro que exporte datos a una hoja e imprima

No soy muy bueno en excel y estoy tratando de crear una macro que me pase ciertos datos a otra hoja y los imprima uno por uno... Me explico, tengo dos hojas en excel, una con nombre "base" y otra con nombre "firmas", en la hoja "base", tengo un listado de datos, (nombre, nit, numero de cuenta, entre otros) que deben ser pegados en ciertos campos de la hoja "firmas" que no es más que un formato maquillado para que parezca creado en word, la idea es que por cada linea que tenga en la hoja "base" (sin importar la cantidad)pegue los datos de cada linea e imprima una hoja por cada misma,,, me explico nuevamente,,, que si tengo 30 lineas,,, me imprima 30 hojas con los datos correspondientes de cada linea, como el Nombre, Nit, Numero de cuenta etc. Le agradecería inmensamente, ya que lo único que he podido logar es que me lleve los datos de cierta linea en la hoja "base" y los pegue en la hoja "firmas", pero me toca imprimir hoja por hoja y la idea es automatizar. Gracias.
Respuesta
1
Dices que ya haz logrado "llevar" los datos de una linea a la hoja "firmas", ¿esto cómo lo hiciste? ¿Con macros? Pregunto para saber como ayudarte
Gracias por tu apoyo,,, esto lo realize con fórmula, eJ: =Hoja4!A2, lo que pasa es que me toca copiar y pegar los datos (en las lineas que me llevan los mismos a la otra hoja) e imprimir una por una manualmente,,, entonces lo que quiero es que tome todo el listado y pase la primera linea e imprima, después la segunda linea e imprima y así sucesivamente... muchas gracias.
aproposito lo unico que consegui fue este codigo,,, que la verdad no entiendo y tampoco me a servido:
Sub Macro12()
'
' Macro12 Macro
'
contar = 15
Sheets("base").Select
Do
    Range("B" & contar & ":D" & contar).Select
    Selection.Copy
    Range("B12:D12").Select
    ActiveSheet.Paste
    Sheets("TARJETAS").Select
    ActiveWindow.LargeScroll Down:=-2
    Application.CutCopyMode = False
    ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
    contar = contar + 1
    Sheets("base").Select
    Range("B" & contar).Select
Loop While ActiveCell.FormulaR1C1 <> ""
'
End Sub
Desafortunadamente la única forma como se me ocurre es con Macros, y por lo que veo, no sabes nada de ello. Hice una macro que tendrías que adaptar a tu caso, abre tu archivo, Presiona Alt+F11, en el menu insertar elige "Modulo" y en el Modulo pega esto:
Sub Imprimir()
Dim Nombre, Nit, NoCuenta As String
Dim Inicial, Final As Integer
Application.ScreenUpdating = False
Inicial = 3
Sheets("base").Select
Final = Range("A" & Rows.Count).End(xlUp).Row
For Inicial = Inicial To Final
    Nombre = Cells(Inicial, "A")
    Nit = Cells(Inicial, "B")
    NoCuenta = Cells(Inicial, "C")
    With Sheets("firmas")
        .Select
        .Range("B3") = Nombre
        .Range("D3") = Nit
        .Range("D6") = NoCuenta
        .PrintOut
    End With
Next
Application.ScreenUpdating = True
MsgBox "Proceso Terminado", vbInformation
End Sub
Pero como te dije, tendrías que adaptarlo a tu caso
Buen Día,,, muchas gracias por tu respuesta,,,, estuve mirando el código,,, lo probé de acuerdo a como me dijiste, lo adapte a un excel para ensayar y... funciona pero solo con la 3 primera linea,,, me explico: si tengo 5 lineas solo me copia los datos de la linea 3,,, y los imprime tal cual,,, pero el resto de cartas osea las 4 restantes me las imprime en blanco digo en blanco, por que no tiene los datos que necesito,,,, creo que el código es perfecto y que bien adaptado realizara la labor que necesito,,, y soy yo el que no esta haciendo las cosas bien,,, te agradecería me ayudaras enviándome el archivo en excel, como lo hiciste,,, y así yo lo analizo mejor y lo adapto al mio,,, es que la verdad macros no es lo mio,,, y hasta ahora estoy entrando en este tema,,, no te imaginas el gran favor que me haces,,, te agradezco mucho por tu tiempo y valoro mucho tu ayuda,,, gracias.
Mis correos son: [email protected]
                           [email protected]
¿Puedes mandarme tu archivo a [email protected] para checarlo?
Se me olvidaba el archivo tiene clave para ingresar al modulo... es CAMILO88 y para el formato de las hojas es camilo88... gracias
Ya t envíe el archivo
Ya te envíe el archivo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas