USO DE FILTROS CON HOJA PROTEGIDA

11/05/2004 - 17:41 por JORGE | Informe spam
A todos:
Como se puede proteger una hoja de Excel sin que se
deshabiliten los filtros?

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
12/05/2004 - 09:34 | Informe spam
hola, Jorge !

Como se puede proteger una hoja de Excel sin que se deshabiliten los filtros?



si usas excel xp o 2003, puedes indicarle que 'permita' el uso del autofiltro [al tiempo de 'proteger']
si usas una version 'anterior' ... con ayuda de codigo en el modulo del libro [ThisWorkbook]
[si deseas que funcione desde ya, sin 'tener que' cerrar y abrir de nuevo el libro]...
... 'te paras' en la macro =>Private Sub Workbook_Open<= y presionas {F5}
_________
Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
End With
End Sub

la condicion para que funcione es ... que el AutoFiltro debe 'estar presente' ANTES.
['EnableAutoFilter = True' SOLO 'permite' al usuario su uso [en hojas protegidas], NO su 'creacion']

si la hoja 'en cuestion' NO tiene 'presente' el Autofiltro y lo quieres 'crear' [por codigo] ... [p.e.]
_________
Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect UserInterfaceOnly:=True
If Not .AutoFilterMode Then .Range("a1").AutoFilter
.EnableAutoFilter = True
End With
End Sub

saludos,
hector.
Respuesta Responder a este mensaje
#2 Anonimo
13/05/2004 - 00:19 | Informe spam
Hola Hector,

Gracias por tu ayuda la macro que enviaste funciono muy
bien. Tengo otra pregunta ¿Como le puedo hacer para que
esta macro corra en todas las hojas del libro?

Saludos,

Jorge.

hola, Jorge !

Como se puede proteger una hoja de Excel sin que se




deshabiliten los filtros?

si usas excel xp o 2003, puedes indicarle que 'permita'


el uso del autofiltro [al tiempo de 'proteger']
si usas una version 'anterior' ... con ayuda de codigo en


el modulo del libro [ThisWorkbook]
[si deseas que funcione desde ya, sin 'tener que' cerrar


y abrir de nuevo el libro]...
'te paras' en la macro =>Private Sub Workbook_Open<=


y presionas {F5}
_________
Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
End With
End Sub

la condicion para que funcione es ... que el AutoFiltro


debe 'estar presente' ANTES.
['EnableAutoFilter = True' SOLO 'permite' al usuario su


uso [en hojas protegidas], NO su 'creacion']

si la hoja 'en cuestion' NO tiene 'presente' el


Autofiltro y lo quieres 'crear' [por codigo] ... [p.e.]
_________
Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect UserInterfaceOnly:=True
If Not .AutoFilterMode Then .Range("a1").AutoFilter
.EnableAutoFilter = True
End With
End Sub

saludos,
hector.
.

Respuesta Responder a este mensaje
#3 Héctor Miguel
13/05/2004 - 04:53 | Informe spam
hola, Jorge !

... la macro ... funciono ... otra pregunta ¿... que ... corra en todas las hojas del libro?



si se han de aplicar a todas las hojas de calculo del libro, modifica a lo siguiente:
Private Sub Workbook_Open()
Dim Hoja As Worksheet
For Each Hoja In ActiveWorkbook.Worksheets
Hoja.Protect UserInterfaceOnly:=True
Hoja.EnableAutoFilter:=True
Next
End Sub

si se trata de [solamente] 'ciertas' hojas, puedes modificar a lo siguiente:
For Each Hoja In Worksheets(Array("Hoja1", "Hoja3"))

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