Simplificar

Hola, realice ésta operación con la finalidad de imprimir desde la "hoja 1" ordenando a las sucesivas para su impresión automática desde la Hoja 2 hasta el 6
El problemita ahora es de que al hacer click para la impresión se queda en la "hoja6" y yo desearía que regrese a la "hoja1", donde está el botón Commandbutton.
Finalmente si la operación expuesta lineas arriba se puede mejorar.
Y otra chiquita más: cuando imprimo demora demasiado el procesamiento ¿Cómo hago para que sea más rápido?
**************************************
Private Sub CommandButton1_Click()
If CheckBox1.Value = True Then
Sheets(Array("hoja2")).Select
ActiveSheet.PageSetup.PrintArea = "$B$10:$J$66"
ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True
End If
If CheckBox2.Value = True Then
Sheets(Array("hoja3")).Select
ActiveSheet.PageSetup.PrintArea = "$B$10:$p$55"
ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True
End If
If CheckBox3.Value = True Then
Sheets(Array("hoja4")).Select
ActiveSheet.PageSetup.PrintArea = "$B$68:$l$67"
ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True
End If
If CheckBox4.Value = True Then
Sheets(Array("hoja5")).Select
ActiveSheet.PageSetup.PrintArea = "$B$12:$I$52"
ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True
End If
If CheckBox5.Value = True Then
Sheets(Array("hoja6")).Select
ActiveSheet.PageSetup.PrintArea = "$B$10:$J$14"
ActiveWindow.SelectedSheets.PrintOut copies:=1, collate:=True
End If
End Sub
***************************
Gracias por tu ayuda soy novato en esto y disculpa por mis intentos
Estaré a la expectativa de tu respuesta
Gracias y Saludos
Javier

1 respuesta

Respuesta
1
Solo respondo de a 1 consulta por usuario, luego que finalices esta seguiré con las otras tuyas.
Hay 2 cositas que retocar: utilizar el elseif en lugar de cerrar cada if y volver a consultar. Se supone que solo tendrá que ejecutar 1 opción entonces escribila así:
Private Sub CommandButton1_Click()
If CheckBox1.Value = True Then
'tus instrucciones
elseIf CheckBox2.Value = True Then
'tus instrucciones para el 2do checkbox
elseif CheckBox3.Value = True Then
'tus instrucciones para el 3ro y así sucesivamente
end if
'volver a la hoja 1
sheets("Hoja1").select
end sub
Creo que con esto además de volver a tu hoja acelerarás el proceso.
Gracias Elsa, logre con satisfacción volver a la Hoja1, pero el detalle esta que deseo que al activar los checkbox que son 5 casilleros pueda imprimirlas todas y cuando empleé "Elseif checkbox"... solo puede imprimir una sola hoja.
Gracias la por la rapidez con que respondes a mis interrogantes
Saludos
Javier
Bueno entonces dejalo como estaba, cada If con su End If para que los ejecute a todos y al final deja la instrucción para que vuelva a la hoja1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas