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

¿Cómo evitar copiar y pegar sobre la celda con la lista desplegable en Excel?

Para una celda con lista desplegable de validación de datos, cuando copie contenido de otra celda y lo pegue, la lista desplegable desaparecerá y se reemplazará con el nuevo contenido pegado. En algunos casos, desea evitar copiar y pegar otro contenido en la celda con la lista desplegable, ¿qué haría para solucionarlo? En este artículo, obtendrá un método VBA para lidiar con este problema.

Evite copiar y pegar sobre la celda con la lista desplegable en Excel


Evite copiar y pegar sobre la celda con la lista desplegable en Excel

1. Abra la hoja de trabajo con la celda de la lista desplegable que desea evitar copiar y pegar.

2. Prensa otro + F11 teclas simultáneamente para abrir el Aplicaciones de Microsoft Visual Basic ventana.

3. En el Aplicaciones de Microsoft Visual Basic ventana, haga doble clic en el nombre de la hoja de trabajo actual en el panel izquierdo, luego copie y pegue el código VBA a continuación en el editor de código. Ver captura de pantalla:

Código de VBA: evite copiar y pegar sobre la celda con la lista desplegable

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20200903
    Dim xValue As String
    Dim xCheck1 As String
    Dim xCheck2 As String
    Dim xRg As Range
    Dim xArrCheck1() As String
    Dim xArrCheck2() As String
    Dim xArrValue()
    Dim xCount, xJ As Integer
    Dim xBol As Boolean
'    If Target.Count > 1 Then
'        Exit Sub
'        End If
    xCount = Target.Count
    ReDim xArrCheck1(1 To xCount)
    ReDim xArrCheck2(1 To xCount)
    ReDim xArrValue(1 To xCount)
    Application.EnableEvents = False
    On Error Resume Next
    xJ = 1
    For Each xRg In Target
        xArrValue(xJ) = xRg.Value
         xArrCheck1(xJ) = xRg.Validation.InCellDropdown
        xJ = xJ + 1
    Next

    Application.Undo

    xJ = 1
    For Each xRg In Target
        xArrCheck2(xJ) = xRg.Validation.InCellDropdown
        xJ = xJ + 1
    Next

    xBol = False
    For xJ = 1 To xCount
        If xArrCheck2(xJ) <> xArrCheck1(xJ) Then
            xBol = True
            Exit For
        End If
    Next

    If xBol Then
       MsgBox "The selected cells containg data validation drop-down lists, no pasting allowed."
    Else
        xJ = 1
        For Each xRg In Target
            xRg.Value = xArrValue(xJ)
            xJ = xJ + 1
        Next

    End If

    Application.EnableEvents = True
End Sub

4. Prensa otro + Q llaves para salir del Aplicaciones de Microsoft Visual Basic ventana.

5. Cuando pegue contenido en una celda con una lista desplegable, aparecerá un cuadro de diálogo para recordarle que no se permite pegar. Ver captura de pantalla:

Nota:: Este VBA solo funciona en el pegado de una sola celda. Si copia y pega en varias celdas, no funcionará.

Cree fácilmente una lista desplegable con casillas de verificación en Excel:

Programas de Lista desplegable con casillas de verificación utilidad de Kutools for Excel puede ayudarlo a crear fácilmente una lista desplegable con casillas de verificación en un rango específico, hoja de trabajo actual, libro de trabajo actual o todos los libros de trabajo abiertos según sus necesidades.
Descargar la función completa 30¡Pista gratuita de un día de Kutools para Excel ahora!


Artículos relacionados:

¿Cómo crear una lista desplegable con múltiples casillas de verificación en Excel?
Muchos usuarios de Excel tienden a crear una lista desplegable con varias casillas de verificación para seleccionar varios elementos de la lista cada vez. En realidad, no puede crear una lista con varias casillas de verificación con Validación de datos. En este tutorial, le mostraremos dos métodos para crear una lista desplegable con múltiples casillas de verificación en Excel. Este tutorial proporciona el método para resolver el problema.

Crear una lista desplegable de otro libro de trabajo en Excel
Es bastante fácil crear una lista desplegable de validación de datos entre hojas de trabajo dentro de un libro. Pero si los datos de la lista que necesita para la validación de datos se encuentran en otro libro de trabajo, ¿qué haría? En este tutorial, aprenderá a crear una lista desplegable de otro libro en Excel en detalle.

Cree una lista desplegable de búsqueda en Excel
Para una lista desplegable con numerosos valores, encontrar uno adecuado no es tarea fácil. Anteriormente, hemos introducido un método para completar automáticamente la lista desplegable cuando ingresa la primera letra en el cuadro desplegable. Además de la función de autocompletar, también puede hacer que la lista desplegable se pueda buscar para mejorar la eficiencia de trabajo al encontrar los valores adecuados en la lista desplegable. Para hacer búsquedas en la lista desplegable, pruebe el método de este tutorial.

Completar automáticamente otras celdas al seleccionar valores en la lista desplegable de Excel
Digamos que ha creado una lista desplegable basada en los valores en el rango de celdas B8: B14. Cuando selecciona cualquier valor en la lista desplegable, desea que los valores correspondientes en el rango de celdas C8: C14 se completen automáticamente en una celda seleccionada. Para resolver el problema, los métodos de este tutorial le harán un favor.

Más tutoriales para la lista desplegable ...


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 (12)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
Esto funciona, pero cuando pego el valor, permite datos que no están en la lista desplegable. Cualquier forma de restringir cualquier valor que no esté en la lista.
Este comentario fue minimizado por el moderador en el sitio
Hola Dilip, pudiste resolver el problema, yo también tengo un problema similar. Tengo que permitir copiar, pegar solo para los valores desplegables en la celda de validación de datos, otros que tengo que restringir. ¿Puedes compartir tu solución? gracias rao
Este comentario fue minimizado por el moderador en el sitio
Hola, mientras ejecutaba esta macro recibí este error de depuración "Application.Undo". Por favor resuelva esto lo antes posible
Este comentario fue minimizado por el moderador en el sitio
Hola, el código vba mencionado anteriormente no se ejecuta. Resuelva amablemente.
Este comentario fue minimizado por el moderador en el sitio
Private Sub Worksheet_Change(ByVal Target As Range) Dim xValue As String Dim xCheck1 As String Dim xCheck2 As String If Target.Count > 1 Then Exit Sub End If Application.EnableEvents = False xValue = Target.Value On Error Reanudar siguiente xCheck1 = Target. Validation.InCellDropdown On Error GoTo 0 Application.Undo On Error Reanudar siguiente xCheck2 = Target.Validation.InCellDropdown On Error GoTo 0 If xCheck1 = xCheck2 Then Target = xValue Else MsgBox "¡No se permite pegar!" End If Application.EnableEvents = True End Sub Esta macro no funciona cuando se copia de un libro de trabajo u hoja de trabajo diferente, así que dígame cómo evitar estas cosas también
Este comentario fue minimizado por el moderador en el sitio
Muchísimas gracias !! me funciona bien!!! la copia en una sola celda está restringida. pero si copio una lista de celdas y pego..., se acepta el pegado. déjame ver si puedo ajustar esto... gracias de todos modos
Este comentario fue minimizado por el moderador en el sitio
Jepson, ¿logró resolver el problema de copiar y pegar en varias celdas? ¡Gracias por adelantado!
Este comentario fue minimizado por el moderador en el sitio
Hola Dilip, ¿puedes solucionar el problema de permitir que los datos usen valores de pegado? También estoy enfrentando el mismo problema... ayúdame con esto, por favor.
Este comentario fue minimizado por el moderador en el sitio
Hola Dilip, ¿puedes solucionar el problema de permitir datos usando valores de pegado?
Este comentario fue minimizado por el moderador en el sitio
¿Conseguiste resolver el problema de copiar y pegar en varias celdas? ¡Gracias por adelantado!
Este comentario fue minimizado por el moderador en el sitio
No, no me di cuenta. No traté de resolver después de un tiempo.
Este comentario fue minimizado por el moderador en el sitio
Funciona PERO después de poner el código no puedes DESHACER nada. No se permite un solo paso atrás.
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

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