Proteger una hoja de excel

Hola, Estoy trabajando con una planilla de pagos, para que varias personas los diligencien. En él, quiero proteger las fórmulas de dos columnas y habilitar algunas para que ellos escriban. Ejmplo: E Y F protegidas.
      a1,          b,               c                   d                    e                        f
nombre       monto     descuento     embargo       total descto          cueque
alex            500             50                 50                   100                    400
Lo hago bien primero desprotejo la columna y filas a, b, c, d, y luego protejo la hoja. Hasta ahí bien pero luego tengo problemas al insertar una fila insertando la fila me permite que agregue datos en la columna a, b, c, d. Pero no me permite que me saque las fórmulas de la columna e y f ni copiar. Quiero ver si se puede hacer eso sin volver a desproteger la hoja.
11/06/2009
Experto
Hola, deberías de poner un botón en la hoja para insertar filas y al botón ponerle el código para que primero desproteja la hoja inserte la fila encima de la celda activa y vuelva a proteger la hoja:
Sub CommandButton1_Click()
    ActiveSheet.Unprotect
    Selection.EntireRow.Insert
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Si necesitas alguna aclaración me lo dices
Si te ha servido puntúa y finaliza la consulta. Gracias.
>Un saludo
>Julio
11/06/2009
Usuario
Hola mira yo estoy trabajando con el excel si me puedes aclarar como lo hago lo que tu me dices de poner un botón
12/06/2009
Experto
Hola, vale bien, así se pone un botón en la hoja:
1º Pulsa en Ver>Herramientas>Cuadro de Herramientas
2º En la barra de herramientas que te ha aparecido pones el cursor encima de los iconos hasta encontrar el que pone Botón de comando, haces click en él y te sitúas en tu hoja en alguna zona de celdas que no utilices y pinchas estiras y dibujas un botón del tamaño que quieras, ahora pinchas encima del botn con el derecho del ratón y eliges Ver código y en el lugar donde aparece parpadeando el cursor pegas estas lineas de código que ya te facilité anteriormente:
ActiveSheet.Unprotect
    Selection.EntireRow.Insert
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Cierras el editor y volverás a la hoja de Excel, guardas los cambios del libro cierras y lo abres nuevamente.
Este código te desprotege la hoja inserta una fila encima de la celda activa y vuelve a protegerla.
>Un saludo
>Julio
PD: Si te sirvió puntúas la consulta y la finalizas. Gracias.
12/06/2009
Usuario
Que bien muchas gracias te agradezco un montón
Si me puedes resolver un problema:
Mira me sirvió de mucho lo que me has enseñado ya lo tengo agregado el botón.
Pero por ejemplo B9, B10 y B11 tengo escrito los datos y esta protegida la hoja las columnas E y F y le doy al botón para insertar una fila, entre b10 puedo insertar la fila pero luego quiero copiar la fórmula que tengo en E y F no me acepta porque esta protegida como puedo hacer esto sin ir a desproteger la hoja.
Muchísimas gracias de antemano

1 Respuesta

Respuesta
1
Si al proteger la hoja permites seleccionar las celdas protegidas te permitirá copiar la fórmula pero no modificarla porque son de solo lectura.
>Un saludo
>Julio
Hola mira bueno me permite copiar la fórmula pero en las columnas que no están protegidas pero en la columna que tengo protegida no me permite copiarla si me puedes dar tu correo y te mando la planilla para que lo analices te agradecería un montón
Te dije que al proteger la hoja en las opciones que permitirás a los usuarios es seleccionar las celdas bloqueadas, tienes que permitírselo, después proteges la hoja y cierras el libro. Vuelve a abrirlo y si pinchas en la celda que esta la fórmula, elige con el derecho copiar y después vas a una celda desprotegida y pinchas con el derecho pegado especial, marcas fórmulas y aceptas.
Prueba esto que era lo que te había dicho, si aún así no te permite ponme un correo y te solicitaré el archivo.
>Un saludo
>Julio
Mira nada no funciona yo lo quiero es copiar la fórmula de la columna protegida y pegar en la misma columna no en la columna desprotegida por que no me serviría de nada en otra columna por ejemplo desprotegida es columna:
a b c d
1              2             3     =+a1+b2+c3   la columna d es la protegida y esa es la q quiero q ello no la toquen y solo al insertar la fila sigan poniendo datos en la columna a b y c no se si me explico bien.
[email protected]
Vale lo que quieres es insertar una fila pero que mantenga las fórmulas en la nueva fila insertada, no copiar una fórmula que tu quieres poner en otro sitio.
Entonces quedaría así:
Private Sub CommandButton1_Click()
    ActiveSheet.Unprotect
    valor = ActiveCell.Address
    fila = Mid(valor, 4)
    celda = "$A$" & fila
    Range(celda).Select
    Application.CutCopyMode = False
     Selection.EntireRow.Insert
    ActiveCell.Offset(1, 3).Copy
    ActiveCell.Offset(0, 3).Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Range(valor, ActiveCell.Offset(0, -1)).Select
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Pruebalá y me cuentas, si te ha servido puntúa y finaliza la consulta. Gracias
>Un saludo
>Julio

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas