Skip to main content

Kutools para Office — Una Suite. Cinco Herramientas. Haz Más.

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

Author Siluvia Last modified

Las listas desplegables de validación de datos son una forma efectiva de controlar qué tipo de información se puede ingresar en celdas específicas en Excel, ayudando a mantener la consistencia y la integridad de los datos dentro de sus hojas de cálculo. Sin embargo, surge un problema común cuando se copia contenido de otra celda y se pega en una celda que contiene una lista desplegable: la validación de datos se elimina y la lista desplegable desaparece. Esto puede resultar en la pérdida de reglas de validación de datos y en la ruptura de la lógica de la hoja de cálculo, especialmente en escenarios donde la entrada del usuario debe restringirse a las opciones proporcionadas por la lista desplegable.

Para mantener la integridad de sus celdas desplegables, es posible que desee evitar que los usuarios peguen sobre ellas. Esto asegura que todos los datos en estos campos críticos continúen siguiendo las restricciones y opciones previstas. En este tutorial, aprenderá cómo detener eficazmente las acciones de copiar y pegar en celdas que contienen listas desplegables utilizando VBA. Este método es adecuado para formularios, plantillas de entrada controlada o cualquier hoja de trabajo donde la calidad de los datos sea esencial.

Evitar copiar y pegar sobre una celda con lista desplegable en Excel


Evitar copiar y pegar sobre una celda con lista desplegable en Excel

Para proteger sus listas desplegables de ser sobrescritas por contenido pegado, puede usar VBA en la hoja de trabajo que contiene esas celdas. Siga estos pasos:

1. Abra la hoja de trabajo que incluye las listas desplegables que desea proteger.

2. Presione Alt + F11 para abrir la ventana de Visual Basic para Aplicaciones.

3. En el panel izquierdo, haga doble clic en la hoja a la que desea aplicar la protección (no "ThisWorkbook"). Pegue el siguiente código VBA en el editor de código:

copy and paste the code into the sheet module

Código VBA: Evitar pegar sobre lista desplegable

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice
    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. Presione Alt + Q para cerrar el editor de VBA y volver a Excel.

5. Intente pegar en una celda con lista desplegable. Un mensaje evitará el pegado, y la lista desplegable permanecerá intacta.

Paste blocked dialog

Nota y limitaciones:
Este código VBA está diseñado solo para acciones de pegado en una sola celda. Puede no prevenir la pérdida de validación de datos en pegados de varias celdas. Informe a los usuarios en consecuencia.

Consejos de solución de problemas:

  • Asegúrese de que el código esté colocado en el módulo de la hoja de trabajo correcto (no en un módulo general).
  • Habilite las macros al abrir el archivo.
  • Verifique dos veces errores de copiar/pegar al pegar el código.
  • Pruebe la macro en un archivo de muestra antes de aplicarla a datos reales.

Soluciones alternativas:

  • Proteger hoja de trabajo: Bloquee las celdas con listas desplegables y proteja la hoja para evitar la edición. Aprenda más
  • Usar alertas de validación de datos: Establezca el estilo de alerta en "Detener" para bloquear la entrada manual no válida. Aprenda más

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

La Lista desplegable con casillas de verificación utilidad de Kutools para Excel puede ayudarlo a crear fácilmente una lista desplegable con casillas de verificación en un rango especificado, hoja de trabajo actual, libro de trabajo actual o todos los libros abiertos según sus necesidades.
¡Descargue la versión completa 30-días de prueba gratuita 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 listas desplegables con múltiples casillas de verificación para seleccionar varios elementos de la lista a la vez. De hecho, no puede crear una lista con múltiples casillas de verificación con Validación de Datos. En este tutorial, vamos a mostrarle 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 desde otro libro 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 están en otro libro, ¿qué haría? En este tutorial, aprenderá cómo crear una lista desplegable desde otro libro en Excel en detalle.

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

Autocompletar otras celdas al seleccionar valores en la lista desplegable de Excel
Supongamos que ha creado una lista desplegable basada en los valores en el rango de celdas B8:B14. Al seleccionar cualquier valor en la lista desplegable, desea que los valores correspondientes en el rango de celdas C8:C14 se autocompleten en una celda seleccionada. Para resolver el problema, los métodos en este tutorial lo ayudarán.

Más tutoriales para listas desplegables...

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o identificar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda por varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Cree rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Los15 principales conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) ... y más
Utiliza Kutools en tu idioma preferido: admite inglés, español, alemán, francés, chino y más de40 idiomas adicionales.

Mejora tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...


Office Tab incorpora la interfaz de pestañas en Office y facilita mucho tu trabajo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de hacerlo en ventanas separadas.
  • ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!

Todos los complementos de Kutools. Un solo instalador

El paquete Kutools for Office agrupa complementos para Excel, Word, Outlook y PowerPoint junto con Office Tab Pro, ideal para equipos que trabajan en varias aplicaciones de Office.

Excel Word Outlook Tabs PowerPoint
  • Suite todo en uno: complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
  • Un solo instalador, una licencia: configuración en minutos (compatible con MSI)
  • Mejor juntos: productividad optimizada en todas las aplicaciones de Office
  • Prueba completa de30 días: sin registro ni tarjeta de crédito
  • La mejor relación calidad-precio: ahorra en comparación con la compra individual de complementos