Impresion con macros

18/09/2004 - 19:15 por Dany Padilla | Informe spam
Un buen amigo me paso las macros para q automaticamente me
imprima las areas q yo necesito y las otras no, las macros
funcionana bien pero cuando la hoja no esta protegida y yo
necesito q funcione cuando la hoja esta protegida ya q los
datos q estan en dicho rangos no pueden cambiarse y
obligatoriamente debe estar protegida la hoja, cuando lo
ejecuto me sale error, alguien me podria ayudar si hay una
solucion les agradeceria mucho


Sub Macro1()
ActiveSheet.PageSetup.PrintArea = "$B$2:$Q$29"
Columns("E:I").EntireColumn.Hidden = True
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Columns("E:I").EntireColumn.Hidden = False
ActiveSheet.PageSetup.PrintArea = ""
ActiveSheet.DisplayAutomaticPageBreaks=False

End Sub


Sub Macro2()
ActiveSheet.PageSetup.PrintArea = "$B$2:$Q$29"
Columns("F:I").EntireColumn.Hidden = True
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Columns("F:I").EntireColumn.Hidden = False
ActiveSheet.PageSetup.PrintArea = ""
ActiveSheet.DisplayAutomaticPageBreaks=False

End Sub


Sub Macro3()
ActiveSheet.PageSetup.PrintArea = "$B$2:$Q$29"
Columns("G:I").EntireColumn.Hidden = True
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Columns("G:I").EntireColumn.Hidden = False
ActiveSheet.PageSetup.PrintArea = ""
ActiveSheet.DisplayAutomaticPageBreaks=False

End Sub


Sub Macro4()
ActiveSheet.PageSetup.PrintArea = "$B$2:$Q$29"
ActiveWindow.SelectedSheets.PrintOut Copies:=1
ActiveSheet.PageSetup.PrintArea = ""
ActiveSheet.DisplayAutomaticPageBreaks=False

End Sub
 

Leer las respuestas

#1 Héctor Miguel
19/09/2004 - 02:28 | Informe spam
hola, Dany !

... macros ... automaticamente ... imprima las areas q yo necesito ...
... funcionana ... cuando la hoja no esta protegida ...
... q funcione cuando la hoja esta protegida ...



cuando necesitas que la proteccion NO 'afecte' a tus macros puedes usar la propiedad 'UserInterfaceOnly'
'aprovecho' [por si las dudas y porque a veces se me olvida] para comentarte que...
hay [ligeros] cambios en cuanto a la seguridad/protecciones/passwords entre versiones...
-> en excel 97 y 2000... NO necesitas 'repetir' el password
en el modulo de codigo del libro ==Private Sub Workbook_Open()
Worksheets("Hoja1").Protect UserInterfaceOnly:=True
End Sub

-> a partir de excel 2002 [xp]... SI es requisito 'repetir' el password
en el modulo de codigo del libro ==Private Sub Workbook_Open()
Worksheets("Hoja1").Protect _
PassWord:="la MISMA cOntRaSeÑa qUe lE pUsISte", _
UserInterfaceOnly:=True
End Sub

saludos,
hector

Preguntas similares