Note: The other languages of the website are Google-translated. Back to English

¿Cómo deshabilitar las funciones de cortar, copiar y pegar en Excel?

Supongamos que tiene un libro de trabajo con datos importantes que necesita proteger para que no se corten, copien y peguen. ¿Cómo lograrlo? Este artículo proporciona un método VBA para que desactive las funciones de cortar, copiar y pegar al mismo tiempo en un libro de Excel.

Deshabilite las funciones de cortar, copiar y pegar con código VBA


Deshabilite las funciones de cortar, copiar y pegar con código VBA

Haga lo siguiente para deshabilitar las funciones de cortar, copiar y pegar en un libro de Excel.

1. En el libro de trabajo, debe deshabilitar las funciones de cortar, copiar y pegar, presione el otro + F11 teclas simultáneamente para abrir el Microsoft Visual Basic para aplicaciones ventana.

2. En el Microsoft Visual Basic para aplicaciones ventana, haga doble clic ThisWorkbook En la izquierda Oficial panel, y luego copie y pegue el siguiente código VBA en el ThisWorkbook (Código) ventana. Ver captura de pantalla:

Código VBA: deshabilite las funciones de cortar, copiar y pegar al mismo tiempo en Excel

Private Sub Workbook_Activate()
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_Deactivate()
Application.CellDragAndDrop = True
Application.OnKey "^c"
Application.CutCopyMode = False
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
Application.CutCopyMode = False
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
Application.CellDragAndDrop = True
Application.OnKey "^c"
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.OnKey "^c", ""
Application.CellDragAndDrop = False
Application.CutCopyMode = False
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Application.CutCopyMode = False
End Sub

3. Luego presione el otro + Q llaves para salir del Microsoft Visual Basic para aplicaciones ventana.

Ahora no puede cortar o copiar datos de este libro de trabajo, mientras tanto, los datos que ha copiado de otras hojas o libros de trabajo no se pueden pegar en este libro de trabajo.

Nota:: La función de arrastrar y soltar también está deshabilitada después de ejecutar el código VBA anterior.


Artículos relacionados:


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office/Excel 2007-2021 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior
Comentarios (50)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
Hago lo anterior, pero la función de cortar, copiar y pasar está deshabilitada en cualquier archivo de Excel que abra. ¿Por qué?
Este comentario fue minimizado por el moderador en el sitio
Hola, utilicé esto para ocultar "Cortar" de los usuarios y funciona muy bien a menos que tenga una Tabla, el "Cortar" vuelve a aparecer milagrosamente cuando selecciona una celda en la Tabla, exactamente lo que estoy tratando de evitar. ¿algunas ideas? ¡Gracias!
Este comentario fue minimizado por el moderador en el sitio
Gracias, señor, está funcionando. Pero en todo el libro de trabajo. Si necesito este código solo en una hoja en particular. ¿Es posible?
Este comentario fue minimizado por el moderador en el sitio
has encontrado una respuesta?
Este comentario fue minimizado por el moderador en el sitio
Muchas gracias. Está funcionando en todo el libro de trabajo. ¿Podemos hacer la codificación solo para 1 hoja? Por favor, ayuda.
Este comentario fue minimizado por el moderador en el sitio
¿Cómo volver a habilitar la función de cortar, copiar y pegar? ¡Por favor aconséjame!
Este comentario fue minimizado por el moderador en el sitio
querido cielo
Ejecute el siguiente VBA1 (coloque el código en el módulo ThisWorkbook) para deshabilitar la función de cortar, copiar y pegar en su libro de trabajo.

VBA1:
Sub DelCopy ()
Con la aplicación
.OnKey "^x", ""
.OnKey "^c", ""
.CommandBars("Celda").Controles(1).Habilitado = Falso
.CommandBars("Celda").Controles(2).Habilitado = Falso
End With
End Sub

Y ejecute VBA2 para habilitar todas estas funciones en su libro de trabajo.

VBA2:
Copia de recuperación secundaria ()
Con la aplicación
.OnKey "^x"
.OnKey "^c"
.CommandBars("Celda").Controles(1).Habilitado = Verdadero
.CommandBars("Celda").Controles(2).Habilitado = Verdadero
End With
End Sub
Este comentario fue minimizado por el moderador en el sitio
Esto no parece haber funcionado para mí. ¿Debería eliminar el código VBA original y luego pegar lo anterior para habilitar la función Cortar, copiar y pegar nuevamente?
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
El comentario anterior de VBA1in es el reemplazo del código original.
Este comentario fue minimizado por el moderador en el sitio
Querido,

quiero deshabilitar cortar, copiar, pegar en la hoja de excel 2007
¿Puedes compartir el código para esto?
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
Gracias por tu comentario. Estoy tratando de encontrar la solución para Excel 2007. Espere pacientemente.
Este comentario fue minimizado por el moderador en el sitio
Hola,
¿Es posible deshabilitar solo "CUT"? pero aún podría usar el Copiar y Pegar?
Este comentario fue minimizado por el moderador en el sitio
Hola Carmelo,
Copie y pegue el siguiente código en la ventana de código del Libro de trabajo en su libro de trabajo y luego guárdelo como un libro de trabajo habilitado para macros de Excel. Entonces la función "Cortar" se desactivará.

Opción explícita
Privado WithEvents Cmbrs como CommandBars

Private Sub Workbook_Open ()
Establecer Cmbrs = Application.CommandBars
End Sub

Private Sub Workbook_Activate ()
Si Application.CutCopyMode = 2 Entonces
Aplicación.CutCopyMode = 0
Si terminar
End Sub

Sub Cmbrs_OnUpdate privado ()
Si yo soy ActiveWorkbook, entonces
Si Application.CutCopyMode = 2 Entonces
Aplicación.CutCopyMode = 0
MsgBox "Operaciones de corte deshabilitadas"
Si terminar
Si terminar
End Sub
Este comentario fue minimizado por el moderador en el sitio
Lo intenté como dijiste pero no pasa nada. A quiero exactamente lo mismo, solo el
Función "Cortar" desactivada. Necesito deshabilitar la opción "cortar" desde la opción del botón derecho y desde la barra de herramientas.
Es posible cristal??
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
El código funciona bien en mi caso. ¿Puedo saber su versión de Office?
Este comentario fue minimizado por el moderador en el sitio
Hi

Soy principiante en códigos VBA y este código resolvió el 99% de mis problemas.

¿Es posible bloquear la hoja de agujeros (como la dosis de este código) pero aún tener una celda desbloqueada?
(Aclarar, me gustaría permitir copiar información pasada en solo una celda en la hoja de agujeros).

Atentamente
L
Este comentario fue minimizado por el moderador en el sitio
Hola linda,
Puede resolver el problema sin usar el código VBA.
Haga clic con el botón derecho en la celda y seleccione Formato de celdas en el menú contextual, desmarque la casilla Bloqueado en la pestaña Protección en el cuadro de diálogo. Y luego proteja la hoja de trabajo con contraseña.
Este comentario fue minimizado por el moderador en el sitio
Me alegró mucho encontrar esta publicación, pero necesito un poco de ayuda para limitar esto a una sola hoja de trabajo en un libro de trabajo de varias hojas de trabajo. Y necesito saber cómo ejecutar esto sin la intervención del usuario... necesitamos esto lo antes posible en un libro de trabajo para ayudar a prevenir errores.
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
El siguiente código de VBA puede ayudarlo a resolver el problema. Y no olvide reemplazar "Hoja2" en el código con el nombre de su hoja.

mJWSName público como cadena

Private Sub Workbook_Open ()
mJWSName = "Hoja2"
End Sub

Private Sub Workbook_Activate ()
Si ActiveSheet.Name = mJWSName Entonces
Application.CutCopyMode = False
Aplicación.OnKey "^c", ""
Aplicación.CellDragAndDrop = Falso
Si terminar
End Sub

Private Sub Workbook_Deactivate ()
Aplicación.OnKey "^c", ""
Aplicación.CellDragAndDrop = Verdadero
Application.CutCopyMode = False
End Sub


Libro de trabajo secundario privado_WindowActivate (ByVal Wn como ventana)
Si ActiveSheet.Name = mJWSName Entonces
Application.CutCopyMode = False
Aplicación.OnKey "^c", ""
Aplicación.CellDragAndDrop = Falso
Si terminar
End Sub

Libro de trabajo secundario privado_WindowDeactivate (ByVal Wn como ventana)
Aplicación.OnKey "^c"
Aplicación.CellDragAndDrop = Verdadero
Application.CutCopyMode = False
End Sub

Sub libro de trabajo privado_SheetSelectionChange (ByVal Sh como objeto, ByVal Target como rango)
On Error Resume Next
Si Sh.Name = mJWSName Entonces
Application.CutCopyMode = False
Si terminar
End Sub

Libro de trabajo secundario privado_SheetActivate (ByVal Sh como objeto)
On Error Resume Next
Si Sh.Name = mJWSName Entonces
Aplicación.OnKey "^c", ""
Aplicación.CellDragAndDrop = Falso
Application.CutCopyMode = False
Si terminar
End Sub

Libro de trabajo secundario privado_SheetDeactivate (ByVal Sh como objeto)
Aplicación.OnKey "^c"
Aplicación.CellDragAndDrop = Verdadero
Application.CutCopyMode = False
End Sub
Este comentario fue minimizado por el moderador en el sitio
Una última pregunta: ¿a dónde va este código y cómo se ejecuta? El proyecto con el que necesita trabajar adjunta un archivo XLA a la hoja de Excel que contiene gran parte del código. No sabía si esto necesita ir a un módulo o al código detrás de esta hoja. Gracias...
Este comentario fue minimizado por el moderador en el sitio
Gracias por su dirección. Estoy intentando en Office 2013, pero nada cambió.
Este comentario fue minimizado por el moderador en el sitio
Hola, el código funciona bien gracias.
Sin embargo, la opción de solo lectura estaba habilitada. (si no quieres modificar). Si configuro ... Archivo, guardar como, herramientas, opciones generales, solo lectura recomendada ... entonces el código no funciona.

Gracias de antemano.
Este comentario fue minimizado por el moderador en el sitio
Realmente funciona bien, muchas gracias.
Este comentario fue minimizado por el moderador en el sitio
Gracias, funciona perfecto ... ¿se puede aplicar en un rango solo de alguna manera?
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
Lo siento, no puedo ayudarte con eso. Bienvenido a publicar cualquier pregunta en nuestro foro: https://www.extendoffice.com/forum.html. Gracias por tu comentario.
Este comentario fue minimizado por el moderador en el sitio
GRACIAS SEÑOR
Este comentario fue minimizado por el moderador en el sitio
Gracias, muy útil.
Este comentario fue minimizado por el moderador en el sitio
cortar copiar pegar aplicable Todo el libro de trabajo. Si necesito este código solo en una hoja en particular. ¿Es posible?
por favor ayuda. solo necesitamos una hoja para desactivar las funciones. otra hoja estamos trabajando todas las funciones...
Este comentario fue minimizado por el moderador en el sitio
Ese código no funciona en mi Excel 2016 para una sola hoja en lugar de todo el libro de trabajo
Este comentario fue minimizado por el moderador en el sitio
Esto todavía permite pegar desde el Bloc de notas o Microsoft Edge. Vea si hay alguna manera de evitar que se pegue desde cualquier fuente.
Este comentario fue minimizado por el moderador en el sitio
Hola,
Si evita que se pegue desde cualquier fuente, debemos evitar la función Bloc de notas, lo que puede traer inconvenientes. No recomendamos esto. Lo siento, no puedo ayudarte con eso.
Este comentario fue minimizado por el moderador en el sitio
¿Utilicé este código y quiero volver a habilitarlo? como volver a habilitarlo?
Este comentario fue minimizado por el moderador en el sitio
use este código para deshabilitar copiar, cortar y pegar



Private Sub Workbook_Activate ()

Application.CutCopyMode = False

Aplicación.OnKey "^c", ""

Aplicación.CellDragAndDrop = Falso

End Sub



Private Sub Workbook_Deactivate ()

Aplicación.CellDragAndDrop = Verdadero

Aplicación.OnKey "^c"

Application.CutCopyMode = False

End Sub



Libro de trabajo secundario privado_WindowActivate (ByVal Wn como ventana)

Application.CutCopyMode = False

Aplicación.OnKey "^c", ""

Aplicación.CellDragAndDrop = Falso

End Sub



Libro de trabajo secundario privado_WindowDeactivate (ByVal Wn como ventana)

Aplicación.CellDragAndDrop = Verdadero

Aplicación.OnKey "^c"

Application.CutCopyMode = False

End Sub



Sub libro de trabajo privado_SheetSelectionChange (ByVal Sh como objeto, ByVal Target como rango)

Application.CutCopyMode = False

End Sub



Libro de trabajo secundario privado_SheetActivate (ByVal Sh como objeto)

Aplicación.OnKey "^c", ""

Aplicación.CellDragAndDrop = Falso

Application.CutCopyMode = False

End Sub



Libro de trabajo secundario privado_SheetDeactivate (ByVal Sh como objeto)

Application.CutCopyMode = False

End Sub





y quiero habilitar estas funciones de nuevo
Este comentario fue minimizado por el moderador en el sitio
Esto funciona muy bien, ¿cómo se modificaría esto para permitir copiar/pegar en columnas específicas que tienen menús desplegables vinculados a rangos con nombre de entrada aceptable y solo la entrada aceptable? Por ejemplo, un nombre que es Jetson, George, 25, permitiría copiar/pegar Jetson, George, 25 pero no permitiría Jeston, George, 26. O arrastrar y rellenar que daría como resultado Jetson, George, 25 y luego 26 , luego 27, etc.
En mi hoja de trabajo, quiero deshabilitar completamente cortar/copiar/pegar en ciertas columnas, luego solo permitir cortar, copiar y pegar datos aceptables de los menús desplegables.
Gracias por su atención.
No hay comentarios publicados aquí todavía
Ver más
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Siganos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL