Bloqueo zoom en una hoja

14/04/2004 - 13:21 por Lao_España | Informe spam
Hola al grupo.

Necesito bloquear el zoom en una sola hoja de un libro, alguien puede
decirme que instrucción de VBA he de emplear.

Muchas gracias.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
15/04/2004 - 02:35 | Informe spam
hola, Lao !

Necesito bloquear el zoom en una sola hoja de un libro ... que instruccion de VBA he de emplear.



podrias 'impedir' que el usuario haga uso de las herramientas 'zoom' cuando este en 'esa' hoja
[solo si lo intenta por la interfase grafica -'manualmente'-... NO... si lo hace 'por macros'] :((
p.e. el menu ver / zoom tiene una ID:’5 el zoom [combo en barras de herramientas] tiene una ID:33

el ejemplo siguiente [+/-] hace lo que solicitas, 'pero'... [por si las dudas] =>REQUIERE excel 2000 o 'superior'<saludos,
hector.
_____
1° 'asegurate' de que el zoom 'actual' [de 'esa' hoja] es el 'adecuado'
:::::::::
2° copia las siguientes lineas en el modulo de codigo de 'la hoja'...
Private Sub Worksheet_Activate()
Zoom_OnOff False
End Sub
Private Sub Worksheet_Deactivate()
Zoom_OnOff True
End Sub
::::::::::::
3° copia las siguientes lineas en un modulo de codigo 'normal'...
Option Private Module
Sub Zoom_OnOff(ByVal OnOff As Boolean)
Dim ComandoZom As CommandBarControl
For Each ComandoZoom In CommandBars.FindControls(ID:’5)
ComandoZoom.Enabled = OnOff
Next
For Each ComandoZoom In CommandBars.FindControls(ID:33)
ComandoZoom.Enabled = OnOff
Next
End Sub
::::::::::::
4° [finalmente] 'repite' la instruccion de 'la hoja' ['Workshet_Deactivate']
en el evento '_BeforeClose' del libro [ThisWorkbook]
=>de otra manera, PERMANECERAN 'des-habilitdos' para la siguiente sesion< [si la 'ultima hoja activa' es la que los 'des-habilita'] =>es solo 'para estar seguros'<= ;)
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Zoom_OnOff True
End Sub
Respuesta Responder a este mensaje
#2 Lao_España
15/04/2004 - 08:13 | Informe spam
Muchas gracias por tu ayuda Héctor, lo voy ha probar y te comentaré

Un saludo.


"Héctor Miguel" escribió en el mensaje
news:%
hola, Lao !

> Necesito bloquear el zoom en una sola hoja de un libro ... que


instruccion de VBA he de emplear.

podrias 'impedir' que el usuario haga uso de las herramientas 'zoom'


cuando este en 'esa' hoja
[solo si lo intenta por la interfase grafica -'manualmente'-... NO... si


lo hace 'por macros'] :((
p.e. el menu ver / zoom tiene una ID:’5 el zoom [combo en barras de


herramientas] tiene una ID:33

el ejemplo siguiente [+/-] hace lo que solicitas, 'pero'... [por si las


dudas] =>REQUIERE excel 2000 o 'superior'<> saludos,
hector.
_____
1° 'asegurate' de que el zoom 'actual' [de 'esa' hoja] es el 'adecuado'
:::::::::
2° copia las siguientes lineas en el modulo de codigo de 'la hoja'...
Private Sub Worksheet_Activate()
Zoom_OnOff False
End Sub
Private Sub Worksheet_Deactivate()
Zoom_OnOff True
End Sub
::::::::::::
3° copia las siguientes lineas en un modulo de codigo 'normal'...
Option Private Module
Sub Zoom_OnOff(ByVal OnOff As Boolean)
Dim ComandoZom As CommandBarControl
For Each ComandoZoom In CommandBars.FindControls(ID:’5)
ComandoZoom.Enabled = OnOff
Next
For Each ComandoZoom In CommandBars.FindControls(ID:33)
ComandoZoom.Enabled = OnOff
Next
End Sub
::::::::::::
4° [finalmente] 'repite' la instruccion de 'la hoja'


['Workshet_Deactivate']
en el evento '_BeforeClose' del libro [ThisWorkbook]
=>de otra manera, PERMANECERAN 'des-habilitdos' para la siguiente


sesion<> [si la 'ultima hoja activa' es la que los 'des-habilita'] =>es
solo 'para estar seguros'<= ;)
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Zoom_OnOff True
End Sub


Respuesta Responder a este mensaje
#3 Lao_España
15/04/2004 - 16:33 | Informe spam
Hola Héctor otra vez.

Lo he probado y funciona perfectamente, lo único que ocurre es que si es la
hoja activa al abrir este libro deja la opción de modificar. Lo que se me
ocurre es poner en la hoja de ThisWorkBook que al abrir se vaya a otra
distinta de esa.

Un saludo. y muchas gracias.

"Héctor Miguel" escribió en el mensaje
news:%
hola, Lao !

> Necesito bloquear el zoom en una sola hoja de un libro ... que


instruccion de VBA he de emplear.

podrias 'impedir' que el usuario haga uso de las herramientas 'zoom'


cuando este en 'esa' hoja
[solo si lo intenta por la interfase grafica -'manualmente'-... NO... si


lo hace 'por macros'] :((
p.e. el menu ver / zoom tiene una ID:’5 el zoom [combo en barras de


herramientas] tiene una ID:33

el ejemplo siguiente [+/-] hace lo que solicitas, 'pero'... [por si las


dudas] =>REQUIERE excel 2000 o 'superior'<> saludos,
hector.
_____
1° 'asegurate' de que el zoom 'actual' [de 'esa' hoja] es el 'adecuado'
:::::::::
2° copia las siguientes lineas en el modulo de codigo de 'la hoja'...
Private Sub Worksheet_Activate()
Zoom_OnOff False
End Sub
Private Sub Worksheet_Deactivate()
Zoom_OnOff True
End Sub
::::::::::::
3° copia las siguientes lineas en un modulo de codigo 'normal'...
Option Private Module
Sub Zoom_OnOff(ByVal OnOff As Boolean)
Dim ComandoZom As CommandBarControl
For Each ComandoZoom In CommandBars.FindControls(ID:’5)
ComandoZoom.Enabled = OnOff
Next
For Each ComandoZoom In CommandBars.FindControls(ID:33)
ComandoZoom.Enabled = OnOff
Next
End Sub
::::::::::::
4° [finalmente] 'repite' la instruccion de 'la hoja'


['Workshet_Deactivate']
en el evento '_BeforeClose' del libro [ThisWorkbook]
=>de otra manera, PERMANECERAN 'des-habilitdos' para la siguiente


sesion<> [si la 'ultima hoja activa' es la que los 'des-habilita'] =>es
solo 'para estar seguros'<= ;)
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Zoom_OnOff True
End Sub


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida