Actualizar y trabajar con Tablas dinámicas en hojas protegidas en Excel

En un entrenamiento de Excel me preguntaron si hay manera de actualizar la información de Tablas dinámicas en Excel aún cuando la hoja esté protegida.

La solución es escribir una macro que nos permita proteger la interface del usuario, pero sí podamos hacer modificación en la hoja sin necesidad de desproteger la hoja.

Ver Video Actualizar Tablas dinámicas en hojas protegidas

Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

Proteger hojas

Cuando tenemos Tablas dinámicas en nuestros archivos de Excel podemos analizar datos de una manera óptima, filtrando valores y armando análisis interesantes.

Qué sucede cuando deseamos proteger una hoja, pero a la vez queremos seguir manipulando los filtros de las Tablas dinámicas.

Si nos vamos a la Ficha Revisar > Proteger hoja, vamos a ver una opción que dice Usar tabla dinámica y gráfico dinámico. Al marcar esta opción, vamos a poder filtrar valores en la Tabla dinámica.

Proteger hoja de Excel permitiendo Tablas dinámicas

Figura 1. Proteger hoja de Excel permitiendo Tablas dinámicas.

Proteger una hoja permitiendo actualización de Tablas dinámicas

Cuando protegemos una hoja, si bien podemos filtrar nuestros datos, no podemos actualizar los valores de las Tablas dinámicas. Ni siquiera aparece la opción para Actualizar. Para este caso debemos usar macros.

La siguiente macro nos permitirá proteger la hoja, pero sólo la interface del usuario. Esto significa que el usuario no podrá manipular los datos, pero sí podremos ejecutar macros en hojas protegidas.

Código VBA de la macros

Option Explicit

Sub ProtegerYActualizar()

Dim td As PivotTable

Worksheets("Hoja2").Protect Password:="1234", UserInterfaceOnly:=True, AllowUsingPivotTables:=True

'Sheets("Hoja2").PivotTables("TablaDinámica1").RefreshTable

For Each td In ActiveSheet.PivotTables

    td.RefreshTable

Next td

End Sub

Sub Desproteger()
Worksheets("Hoja2").Unprotect Password:="1234"
End Sub

Sub ActualizarTD()

Sheets("Hoja2").PivotTables("TablaDinámica1").RefreshTable

End Sub

Descarga el archivo de ejemplo

Actualizar y trabajar con Tablas dinámicas en hojas protegidas – EXCELeINFO.zip

Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.

You may also like...

Leave a Reply

Your email address will not be published.

%d bloggers like this: