Escala de tiempo con bloqueo de hoja

6 envíos / 0 nuevos
Último envío
Luis Guzman
Imagen de Luis Guzman
Offline
última acción: Hace 3 años 9 meses
alta: 08/03/2017 - 23:12
Puntos: 290
Escala de tiempo con bloqueo de hoja

Hola, tengo el siguiente problema: Tengo una tabla dinamica la cual manipulo con una Escala de Tiempo. Por cuestion de seguridad necesito bloquear la hoja, al hacerlo, la escala de tiempo queda vulnerable (con la propiedad desbloqueada), es decir la puedo mover o eliminar, mientras que por otra parte, la opcion de Nivel de Tiempo no me deja cambiar a otra opción (Años, Trimestres, Meses, Días), al menos que desbloquee la hoja, pero no se debe desbloquear. 

Alguna sugerencia, agredezco su ayuda.

Saludos

Etiquetas: 

RET
Imagen de RET
Offline
última acción: Hace 3 años 8 meses
alta: 01/06/2020 - 13:29
Puntos: 290
Me vas a perdonar, pero yo no

Me vas a perdonar, pero yo no entiendo el problema. QUe es la escala de tiempo? Que es el nivel de tiempo?

IMF_RET

Visitame en https://InformaticaMuyFacil.com

Luis Guzman
Imagen de Luis Guzman
Offline
última acción: Hace 3 años 9 meses
alta: 08/03/2017 - 23:12
Puntos: 290
Escala de tiempo

La escala de tiempo es una facilidad que permite manippular las tablas dinámicas, como tipo de segmentación de datos, está dentro de las opciones de Análisis  de Tablas Dinámicas. Saludos.

RET
Imagen de RET
Offline
última acción: Hace 3 años 8 meses
alta: 01/06/2020 - 13:29
Puntos: 290
Escala de tiempo con bloqueo de hoja

Con esto puedes evitar borrar la escala de tiempo, pero no moverla.

Para lo de los niveles de tiempo, no te puedo ayudar. Igual podrias hacer un desbloqueo qeu dure solo unos segundos al hacer doble click en algun sitio que tu sepas.

Private Sub Worksheet_Change(ByVal Target As Range)

    On Error GoTo BORRADA

    Application.EnableEvents = False

    Set MiEscala = ActiveWorkbook.SlicerCaches("NativeTimeline_Fecha1").TimelineState

    Set MiEscala = Nothing

    Application.EnableEvents = True

    Exit Sub

    

BORRADA:

        Application.Undo

        Application.EnableEvents = True

End Sub

 Donde dice NativeTimeline_Fecha1, debes poner el nombre de tu escala de tiempo

IMF_RET

Visitame en https://InformaticaMuyFacil.com

Luis Guzman
Imagen de Luis Guzman
Offline
última acción: Hace 3 años 9 meses
alta: 08/03/2017 - 23:12
Puntos: 290
Gracias

Gracias por la opción, la voy a incorporar... látima que tampoco se pueda utilizar las opciones de tiempo... Será un error en excel?

Jeffrey Wagner (no verificado)
Imagen de Jeffrey Wagner
Escala de Tiempo con Bloqueo de hoja

Definitivamente no hay una forma directa de cambiar el nivel en la Escala de tiempo si la hoja esta bloqueada. 

A mi me funcionó creando unos botones adicionales (Option Button) y cambiando el nivel por codigo a partir de estos botones: 

Con estos botones Hice una pequeña subrutina con la cual cambio la escala en el slicer:

 

Sub CambiaEscala()

    vOpcion = Range("D1").Value  'Campo al que asocie el valor del boton

    Select Case vOpcion

        Case 1

            ActiveWorkbook.SlicerCaches("Nombre de tu objeto").Slicers("Nombre del Slicer").TimelineViewState.Level = xlTimelineLevelYears

        Case 2

            ActiveWorkbook.SlicerCaches("Nombre de tu objeto").Slicers("INV DATE").TimelineViewState.Level = xlTimelineLevelQuarters

        Case 3

            ActiveWorkbook.SlicerCaches("Nombre de tu objeto").Slicers("INV DATE").TimelineViewState.Level = xlTimelineLevelMonths

        Case 4

            ActiveWorkbook.SlicerCaches("Nombre de tu objeto").Slicers("INV DATE").TimelineViewState.Level = xlTimelineLevelDays

        Case Else

            ActiveWorkbook.SlicerCaches("Nombre de tu objeto").Slicers("INV DATE").TimelineViewState.Level = xlTimelineLevelMonths 'Item por defecto

    End Select

End Sub

 

Espero que les sea de utilidad, si hay alguna duda pueden contactarme en ljawr2004@gmail.com