Excel - Imprimir varias hojas según valor de celda

 
Vista:
Imágen de perfil de Pablo
Val: 5
Ha aumentado su posición en 9 puestos en Excel (en relación al último mes)
Gráfica de Excel

Imprimir varias hojas según valor de celda

Publicado por Pablo (3 intervenciones) el 28/07/2019 20:08:52
macro-impresion

Hola, espero me puedan ayudar. Tengo una matriz en excel donde están los datos de matricula de estudiantes y que luego se debe imprimir la hoja de cada uno, quisiera saber si se puede crear una macro que me permita realizar la misma tarea pero desde el estudiante 1 hasta el estudiante final (puede variar). Manualmente se sube el numero con los botones de Control de Numero y se envia a imprimir.

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Hector Madriz
Val: 857
Bronce
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Imprimir varias hojas según valor de celda

Publicado por Hector Madriz (137 intervenciones) el 29/07/2019 03:35:11
Buen dia, prueba esto:

1
2
3
4
5
6
7
8
9
10
11
12
13
Sub ImprimirHojas()
    Desde = Range("B1").Value
    Hasta = Range("B2").Value
    If (Hasta <= Sheets.Count) And (Desde <= Hasta) And (Desde >= 1) Then
       For Cont = Desde To Hasta
           If Cont = Desde Then Sheets(Array(Cont)).Select Replace:=True Else Sheets(Array(Cont)).Select Replace:=False
       Next
       ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
       Sheets(Array(1)).Select Replace:=True
    Else
       MsgBox "Error! Revise el intervalo", vbCritical, "Upss"
    End If
End Sub

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pablo Rojas
Val: 5
Ha aumentado su posición en 9 puestos en Excel (en relación al último mes)
Gráfica de Excel

Imprimir varias hojas según valor de celda

Publicado por Pablo Rojas (3 intervenciones) el 30/07/2019 05:22:43
Hola
Gracias por la respuesta,
Solo una duda, en la celda k11 esta el numero que identifica al estudiante que deseo imprimir la informacion. No le añade 1 a esa celda para que siga imprimiendo. Como le identifico la variable de esa celda (k11) para que vaya aumentando e imprimiendo los datos hasta llegar al numero de estudiantes que constan en la lista (que varia entre 1 hasta 45), pero pueden ser solo 10, 15, 21, hasta 45)
Muy agradecido por tu tiempo, si me puedes ayudar como le hago ese bucle de impresion que inicie en 1 hasta el numero de estudiantes que constan en la matriz.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hector Madriz
Val: 857
Bronce
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Imprimir varias hojas según valor de celda

Publicado por Hector Madriz (137 intervenciones) el 30/07/2019 14:31:51
Buen dia, anexa un archivo de ejemplo para evaluar tu requerimiento...

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pablo
Val: 5
Ha aumentado su posición en 9 puestos en Excel (en relación al último mes)
Gráfica de Excel

Imprimir varias hojas según valor de celda

Publicado por Pablo (3 intervenciones) el 31/07/2019 12:15:42
Buen dia
Adjunto archivo, saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hector Madriz
Val: 857
Bronce
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Imprimir varias hojas según valor de celda

Publicado por Hector Madriz (137 intervenciones) el 01/08/2019 02:28:23
Prueba esto:


1
2
3
4
5
6
7
Sub ImprimirTodos()
  Range("K11").Value = 1
  Do
    If Range("L24").Value <> 0 Then ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
    Range("K11").Value = Range("K11").Value + 1
  Loop Until Range("L24").Value = 0 ' Donde esta el nombre del alumno
End Sub

Agrega un botón y asigna esta macro.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar