Ayuda para agrupar-desagrupar y filtrar en hoja protegida.

23/01/2007 - 22:05 por Cecilia | Informe spam
Hola a todos
Tengo un libro con una hoja protegida la cual tiene varios rangos
agrupados y quiero poder desagruparlos y además poder filtrar. Para
ello tengo el siguiente codigo VBA que funciona correctamente:

Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect Password:="clave", userinterfaceonly:=True, _
AllowFiltering:=True
.EnableOutlining = True
End With
End Sub

Ahora quiero que esto me funcione en todas las hojas del mismo libro,
no solo en la hoja1, tambien en hoja2, hoja3..., tengo el siguiente
código VBA:

Private Sub Workbook_Open()
Dim objHoja As WorkSheet
For Each objHoja In ThisWorkbook.Sheets
With objHoja
.Protect Password:="clave", userinterfaceonly:=True, _
AllowFiltering:=True
.EnableOutlining = True
End With
End Sub

Pero no me funciona ¿Alguien me puede decir que le falta (o sobra)
para que funcione?
Muchas gracias a todos
Un saludo
Cecilia
 

Leer las respuestas

#1 Héctor Miguel
25/01/2007 - 05:34 | Informe spam
hola, Cecilia !

[como] no indicas cual es la 'falla' o por que es que no te funciona con varias hojas -?-
[supongo que] probablemente al momento de aplicar las protecciones [a las hojas donde no funciona]
... no tienen ya habilitado/asignado/operante/... ni los rangos CON autofiltros ni los rangos 'agrupados' -?-

los codigos que expones [solo] 'permiten' el uso de tales caracteristicas... NO su 'creacion' -?-
a menos que tambien por codigo les establezcas los rangos para los autofiltros y/o esquemas agrupados -?-

comentas [si hubiera] algun detalle diferente de los supuestos anteriores ?
saludos,
hector.

__ la consulta original __
Tengo... una hoja protegida... varios rangos agrupados y quiero poder desagruparlos y ademas poder filtrar.
Para ello... el siguiente codigo VBA... funciona correctamente:
Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect Password:="clave", userinterfaceonly:=True, _
AllowFiltering:=True
.EnableOutlining = True
End With
End Sub
Ahora quiero que esto me funcione en todas las hojas del mismo libro, no solo en la hoja1, tambien en hoja2, hoja3
el siguiente codigo VBA:
Private Sub Workbook_Open()
Dim objHoja As WorkSheet
For Each objHoja In ThisWorkbook.Sheets
With objHoja
.Protect Password:="clave", userinterfaceonly:=True, _
AllowFiltering:=True
.EnableOutlining = True
End With
End Sub


Pero no me funciona Alguien me puede decir que le falta (o sobra) para que funcione?

Preguntas similares