Ayuda para desagrupar y filtrar en hojas protegidas

29/01/2007 - 20:34 por Cecilia | Informe spam
Buenas tardes, siento repetirme pero necesito ayuda con esto :)
En un libro tengo varias hojas protegidas, las cuales tienen filtros y
también datos agrupados. Quiero que los usuarios puedan filtrar y
agrupar o desagrupar y para ello tenía en un principio este código VBA
que me facilitaron aquí, que funcionaba, pero tan solo con una hoja:
Private Sub Workbook_Open()
With Worksheets("Hoja1")
.Protect Password:="clave", userinterfaceonly:=True, _
AllowFiltering:=True
.EnableOutlining = True
End with
End sub

Ahora quiero que me funcione en todas las hojas de ese libro (que ya
tienen filtros y datos agrupados), ya planteé esta duda aquí y me
dieron el siguiente:
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
Creo... que al probarla funcionó.. pero ahora que lo quiero aplicar al
libro en cuestión, no soy capaz.
Al abrir el libro se abre el editor VBA y da el siguiente error (que
no se solucionar): " Error de compilación - For sin next "
¿Cómo podría solucionarlo? Os adelanto que no tengo ni idea de VBA.
Muchisimas gracias por vuestra atención y tiempo.
Un saludo
Cecilia

Preguntas similare

Leer las respuestas

#1 Abraham
29/01/2007 - 20:38 | Informe spam
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
Next
End with
End sub

No lo he probado, pero aaprentemente, tal como te decia el mensaje
solo faltaba el next.

Abraham
Respuesta Responder a este mensaje
#2 Cecilia
29/01/2007 - 20:42 | Informe spam
Hola, ya lo probé y nada, da el mismo error.
Gracias
Cecilia

On 29 ene, 20:38, "Abraham" wrote:
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
Next
End with
End sub

No lo he probado, pero aaprentemente, tal como te decia el mensaje
solo faltaba el next.

Abraham
Respuesta Responder a este mensaje
#3 Abraham
29/01/2007 - 21:10 | Informe spam
Ahora si, jejeje, un error de "ojo":

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
Next
End Sub

Abraham
Respuesta Responder a este mensaje
#4 Cecilia
29/01/2007 - 21:21 | Informe spam
Hola Abraham
Muchiiiisimas gracias!!!
Funciona perfecto !!!
Mil gracias de nuevo
Saludos
Cecilia

On 29 ene, 21:10, "Abraham" wrote:
Ahora si, jejeje, un error de "ojo":

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
Next
End Sub

Abraham
Respuesta Responder a este mensaje
#5 ospinacastano
13/05/2011 - 09:25 | Informe spam
Abraham escribió el 29/01/2007 20:38 :
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
Next
End with
End sub

No lo he probado, pero aaprentemente, tal como te decia el mensaje
solo faltaba el next.

Abraham


Buenas tardes Abraham!

Tengo una pregunta respecto al código: La hoja a la cual le voy a poner éste codigo tiene que estar protegida previamente o el código la protege después?...no me quiere funcionar!!!...ps yo solo necesito proteger una hoja pero que me permita desagrupar celdas...ojalá puedas colaborarme.

Gracias por la atención prestada!
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida