Fórmula o macro para ocultar contenido de 2 columnas y que pida contraseña

Tengo una planilla en donde lo que necesito hacer es ocultar el contenido de la misma (osea la columnas se deben seguir viendo pero vacía). Las columnas que necesito ocultar son la E y la I.

Pero que usuarios autorizados, mediante una contraseña puedan desbloquear/ ver el contenido de esas columnas.

1 Respuesta

Respuesta
1

Revisa la siguiente propuesta:

Para proteger la hoja y bloquear las columnas "E", "I"

La hoja se protege con el password "admin"

Sub Proteger()
  Dim pass As String
  '
  pass = "admin"
  '
  ActiveSheet.Unprotect pass
  With Range("E:E, I:I")
    .Locked = True
    .FormulaHidden = True
    .Interior.Pattern = xlNone
    .Font.Color = vbWhite
  End With
  ActiveSheet.Protect pass, DrawingObjects:=True, Contents:=True, Scenarios:=True
  ActiveSheet.EnableSelection = xlUnlockedCells
End Sub

Ahora, para mostrar únicamente el contenido de las columnas, pero la hoja seguirá protegida, solamente podrán ver las columnas.

La contraseña para mostrar las columnas es: "abc"

Sub Mostrar_columnas()
  Dim clave As String
  Dim pass As String
  '
  pass = "admin"
  '
  Do While True
    clave = InputBox("Captura contraseña : ", "HOJA PROTEGIDA")
    If StrPtr(clave) = 0 Then
      MsgBox "Cancelado"
      Exit Sub
    ElseIf Len(clave) = 0 Then
      MsgBox "Captura un valor"
    Else
      If clave = "abc" Then
        Exit Do
      End If
    End If
  Loop
  '
  ActiveSheet.Unprotect pass
  With Range("E:E, I:I")
    .Font.Color = vbBlack
  End With
  ActiveSheet.Protect pass, DrawingObjects:=True, Contents:=True, Scenarios:=True
  ActiveSheet.EnableSelection = xlUnlockedCells
End Sub

Si quieres modificar las columnas, simplemente desprotege la hoja con el password "admin" y podrás editar las columnas.

Dante

La 1ra opción es la que más se adecua a lo que busco

El tema es que cuando las desprotejo necesito que las celdas ocultas no estén con tinta blanca, sino que el usuaria autorizado pueda leer el contenido sin tener que darle formato

No son 2 opciones. La solución se completa con las 2 macros. Como administrador debes ejecutar la primera macro para "ocultar" las columnas. La persona autorizada deberá ejecutar la macro "Mostrar_columnas" para "mostrar" las columnas.


No quieres ocultar la columna. No quieres el texto en blanco.

¿Entonces cuál es tu idea?

El tema es que cuando las desprotejo necesito que las celdas ocultas no estén con tinta blanca

Debes desproteger la hoja con la macro "Mostrar_Columnas"

Y cuando necesites bloquear nuevamente debes ejecutar la macro "Proteger"

Si tienes dudas me comentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas