Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Imprimir con macro en Excel cierta cantidad de paginas

Estas en el tema de Imprimir con macro en Excel cierta cantidad de paginas en el foro de Visual Basic clásico en Foros del Web. Quizás sea una pavada pero no tengo conocimientos de VB. Estaba preparando una macro para que me imprima varias hojas de un formulario en las ...
  #1 (permalink)  
Antiguo 07/12/2006, 10:11
Avatar de cgs
cgs
 
Fecha de Ingreso: febrero-2004
Ubicación: En algún impreciso lugar de Argentina
Mensajes: 96
Antigüedad: 20 años, 2 meses
Puntos: 0
Imprimir con macro en Excel cierta cantidad de paginas

Quizás sea una pavada pero no tengo conocimientos de VB. Estaba preparando una macro para que me imprima varias hojas de un formulario en las que solo cambia el numero de orden: 1, 2, 3, número que el usuario carga en una hoja llamada Datos. El usuario ingresa pagina de inicio y pagina de final, y la macro imprime tantas hojas como haya entre Final - Inicio, colocando el numero de la hoja a medida que imprime. "Invente" esto pero no funciona: Esto que hice está asignado a un boton cuya caption es "Imprimir", en la misma hoja a imprimir:

Private Sub CommandButton3_Click()
Dim Inicio, Final
Inicio = Worksheets("Datos").Range("E12").Value
Fin = Worksheets("Datos").Range("E13").Value

If Inicio < Final Then
Imprimir:
Range("C2").Select
ActiveCell.FormulaR1C1 = "Worksheets("Datos").Range("E12").Value"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Inicio = Inicio + 1
ElseIf Inicio <= Final Then
GoTo Imprimir
End If
End Sub

gracias por lo que puedan indicarme. Seguiré leyendo mientras.
__________________
(_.·-¦-»çg§«-¦-·._)
Teoría es cuando se sabe todo y nada funciona; práctica, cuando todo funciona y nadie sabe porqué. Anónimo
  #2 (permalink)  
Antiguo 07/12/2006, 15:02
Avatar de cgs
cgs
 
Fecha de Ingreso: febrero-2004
Ubicación: En algún impreciso lugar de Argentina
Mensajes: 96
Antigüedad: 20 años, 2 meses
Puntos: 0
Solucionado

Ya está. Me estaba complicando, al final usé un bucle for. Para alguien como yo que no tiene ni idea, acá va el código que se coloca en el boton Imprimir en la hoja:

Private Sub CommandButton3_Click()
Dim inicio As Integer, final As Integer
inicio = Worksheets("Datos").Range("E13").Value
final = Worksheets("Datos").Range("E14").Value
For Count = inicio To final
Worksheets("Hoja a imprimir").Cells(4, 6).Value = inicio
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
inicio = inicio + 1
Next Count
MsgBox "hojas impresas:" & final
End Sub

Suerte~!
__________________
(_.·-¦-»çg§«-¦-·._)
Teoría es cuando se sabe todo y nada funciona; práctica, cuando todo funciona y nadie sabe porqué. Anónimo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:08.