¿Por qué pegarlo en una celda desprotegida en Excel lo protege?

12

Mientras investigaba la respuesta a esta pregunta , me topé con un comportamiento bastante extraño en Excel relacionado con celdas desprotegidas en hojas de trabajo protegidas.

Para ver a qué me refiero, cree un nuevo libro de trabajo, desproteja su primera celda (A1) y proteja la hoja de trabajo . La única celda en la que se puede ingresar texto ahora debe ser A1. A continuación, vaya a otra aplicación (por ejemplo, su navegador) y copie el texto desde allí. Seleccione la primera celda haciendo clic una vez (no haga doble clic ni pegue en la barra de formulario) y pegue el texto en ella.

Esto no solo cambiará potencialmente el formato de la celda, sino que también establecerá su bandera protegida. A partir de entonces, no hay forma de volver a cambiar el contenido de esa celda sin eliminar la protección de la hoja de trabajo (o deshacer la operación de pegado, por supuesto).

¿Porqué es eso? ¿Es este comportamiento deseado o un error en Excel 2010 (la versión que usé para probar esto)?

PersonalNexus
fuente

Respuestas:

13

En realidad, es el comportamiento esperado (bien esperado por Microsoft, no necesariamente por los usuarios), que es la buena noticia. Y hay un trabajo bastante simple en torno al cual son las noticias aún mejores.

Cuando pega un texto formateado, la celda recibe el estilo "Normal" y luego tiene el formato requerido en capas en la parte superior. El estilo "Normal" por defecto tiene la protección establecida en bloqueada. Por eso se está aplicando.

La solución es modificar el estilo "Normal". Para replicar una versión resuelta de este problema, cree un nuevo libro de trabajo y luego:

1) En la cinta de inicio en la sección Estilos, haga clic derecho en el cuadro Normal y haga clic en Modificar. Presione el botón Formato y en la pestaña de protección desmarque Bloqueado. (Recuerde que esto solo se aplica a esta hoja de cálculo, pero que todas las celdas ahora estarán desprotegidas en lugar de protegidas).

2) Seleccione Todas las celdas, haga clic con el botón derecho y elija dar formato a las celdas, y bajo protección marque Bloqueado

3) Seleccione A1 solamente, haga clic con el botón derecho, elija el formato de las celdas y, bajo protección, desmarque bloqueado.

4) Proteger la hoja de trabajo

Ahora deberíamos volver al mismo punto que el ejemplo en la pregunta en términos de celdas bloqueadas y desbloqueadas pero con un estilo Normal diferente.

Ahora, cuando pego texto desde Word o en otro lugar, la celda no queda protegida.

Alex Andronov
fuente
Después de trabajar varios años con Excel, me sorprendió descubrir esta "característica". Ni siquiera creí cuando mis usuarios lo contaron hasta que me revisé :) Me alegro de que te hayas encontrado este año antes que yo: D
ZygD
1

La respuesta anterior ya no se aplica a la versión más reciente de Excel 365. La versión actual de Excel 365 ahora crea un nuevo estilo llamado "Normal 2" o cualquier número de secuencia que necesite. Aplica el nuevo estilo que está bloqueado en lugar del estilo normal modificado.

Aquí está la solución para Excel 365. Seleccione el rango de celdas que desea que otros puedan editar. Luego, vaya a la pestaña "Revisar". En la sección "Cambios", haga clic en "Permitir a los usuarios editar rangos". Haga clic en el botón "Nuevo". Su rango seleccionado se completará automáticamente con un título generado automáticamente. Realice los cambios manuales que desee. Si desea que las personas puedan hacer cambios solo con una contraseña, puede ingresarla aquí. Prefiero que las personas no usen una contraseña, así que hago clic en el botón "Permisos" y luego en "Agregar". Quiero que cualquiera pueda editar sin una contraseña, así que ingresé "Todos" ya que el usuario permitió realizar ediciones. Si comprende los permisos, puede seleccionar un usuario o un conjunto de usuarios que podrán realizar ediciones sin contraseña. Luego simplemente haga clic en "Aceptar" hasta que todas las ventanas estén cerradas. Protege tu sábana y estarás bien.

Kuan
fuente
0

No sé por qué está sucediendo, pero en lo que a mí respecta, es un gran error. :-(

Parece que cada vez que Excel intenta pegar el formato del texto junto con el texto, vuelve a bloquear la celda. Si elige Match Destination Formattingcomo su opción de pegar; pegar desde un editor de texto plano como el Bloc de notas; o pegar desde otro libro de trabajo en la misma instancia de Excel, luego la celda aún se desbloquea después. Si realiza un pegado regular desde cualquier otra aplicación que tenga formato de texto, incluso otra instancia de Excel, Excel está bloqueando su celda desbloqueada.

El problema de formato, como mínimo, tiene una solución alternativa donde puede copiar el formato correcto desde otra celda y pegarlo nuevamente en la celda desordenada.

mischab1
fuente
Resulta que no es un error. Agregué lo que creo que es una solución y pensé que podría interesarte.
Alex Andronov
La opción de pegar como texto sin formato (o Formato de destino de coincidencia) es probablemente la mejor ruta a seguir si ya ha configurado su hoja de cálculo y no puede tener que configurarla nuevamente editando el estilo Normal. Sin embargo, depende de que los usuarios de la hoja de cálculo sepan cómo elegir diferentes opciones de pegado. En mi experiencia, ¡son muy pocas personas!
user535673
0

Selecciona la celda desprotegida en una hoja protegida (AtiveCell) en la que pega los datos de un navegador web. Después de pegar se protege. Eso no es deseable :-)

¡Hice esto y funciona!

En el código de la hoja, en mi caso "Hoja1":

Sub Worksheet_Change(ByVal Target as Range)

  ...some irellevant code...

  ActiveSheet.Unprotect   
  ActiveCell.Locked=False

  ...code that protects Sheet1

Exit Sub
sistaskriket
fuente
0

Al igual que todos los demás en esta página (y tema) han encontrado esto incómodo. Sin embargo, la mejor manera (para mí) de evitar esto es pegar para "pegar valores" al insertar datos y "pegar especiales" - "hipervínculo" al pegar enlaces. He hecho las cosas de esta manera, ya que generalmente tengo un formato condicional bastante complicado y tengo que pegar los valores de forma habitual (o los cambios de formato condicional). Espero que encuentres esto útil.

Martín
fuente