Como evitar copiar e colar sobre células com lista suspensa no Excel?
As listas suspensas de validação de dados são uma maneira eficaz de controlar o tipo de informações que podem ser inseridas em determinadas células no Excel, ajudando a manter a consistência e integridade dos dados dentro de suas planilhas. No entanto, um problema comum surge quando você copia conteúdo de outra célula e cola em uma célula que contém uma lista suspensa – a validação de dados é removida e a lista suspensa desaparece. Isso pode resultar na perda das regras de validação de dados e na quebra da lógica da planilha, especialmente em cenários onde a entrada do usuário deve ser restrita às opções fornecidas pela lista suspensa.
Para manter a integridade das células com listas suspensas, você pode querer impedir os usuários de colarem sobre elas. Isso garante que todos os dados nesses campos críticos continuem seguindo as restrições e opções pretendidas. Neste tutorial, você aprenderá como parar efetivamente as ações de copiar e colar em células que contêm listas suspensas usando VBA. Este método é adequado para formulários, modelos de entrada controlada ou qualquer planilha onde a qualidade dos dados seja essencial.
Evite copiar e colar sobre células com lista suspensa no Excel
Evite copiar e colar sobre células com lista suspensa no Excel
Para proteger suas listas suspensas de serem sobrescritas por conteúdo colado, você pode usar o VBA na planilha que contém essas células. Siga estes passos:
1. Abra a planilha que inclui as listas suspensas que deseja proteger.
2. Pressione Alt + F11 para abrir a janela do Visual Basic for Applications.
3. No painel esquerdo, clique duas vezes na planilha à qual deseja aplicar a proteção (não "ThisWorkbook"). Cole o seguinte código VBA no editor de código:
Código VBA: Impedir colagem sobre lista suspensa
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. Pressione Alt + Q para fechar o editor de VBA e retornar ao Excel.
5. Tente colar em uma célula de lista suspensa. Uma mensagem impedirá a colagem, e a lista suspensa permanecerá intacta:
Nota e limitações:
Este código VBA foi projetado apenas para ações de colagem em células únicas. Pode não prevenir a perda de validação de dados para colagens em várias células. Informe os usuários de acordo.
Dicas de solução de problemas:
- Certifique-se de que o código esteja colocado no módulo correto da planilha (não em um módulo geral).
- Ative as macros ao abrir o arquivo.
- Verifique novamente se há erros de cópia/colagem ao colar o código.
- Teste a macro em um arquivo de exemplo antes de aplicá-la aos dados reais.
Soluções alternativas:
- Proteger planilha: Bloqueie células com listas suspensas e proteja a planilha para evitar edição. Saiba mais
- Use alertas de validação de dados: Defina o estilo de alerta como "Parar" para bloquear entradas manuais inválidas. Saiba mais
Crie facilmente uma lista suspensa com caixas de seleção no Excel:
O Adicionar caixas de seleção à lista suspensa utilitário do Kutools para Excel pode ajudá-lo a criar facilmente uma lista suspensa com caixas de seleção em um intervalo especificado, na planilha atual, na pasta de trabalho atual ou em todas as pastas de trabalho abertas com base nas suas necessidades.
Baixe agora a versão completa 30-dia de teste gratuito do Kutools para Excel!
Artigos relacionados:
Como criar uma lista suspensa com múltiplas caixas de seleção no Excel?
Muitos usuários do Excel tendem a criar listas suspensas com várias caixas de seleção para selecionar vários itens da lista de uma só vez. Na verdade, você não pode criar uma lista com várias caixas de seleção com Validação de Dados. Neste tutorial, vamos mostrar dois métodos para criar uma lista suspensa com várias caixas de seleção no Excel. Este tutorial fornece o método para resolver o problema.
Criar uma lista suspensa a partir de outra pasta de trabalho no Excel
É bastante fácil criar uma lista suspensa de validação de dados entre planilhas dentro de uma pasta de trabalho. Mas se os dados da lista que você precisa para a validação de dados estão localizados em outra pasta de trabalho, o que você faria? Neste tutorial, você aprenderá detalhadamente como criar uma lista suspensa a partir de outra pasta de trabalho no Excel.
Criar uma lista suspensa pesquisável no Excel
Para uma lista suspensa com numerosos valores, encontrar o valor correto não é uma tarefa fácil. Anteriormente, introduzimos um método de autocompletar a lista suspensa quando o primeiro caractere é digitado na caixa suspensa. Além da função de autocompletar, você também pode tornar a lista suspensa pesquisável para melhorar a eficiência no trabalho de encontrar os valores corretos na lista suspensa. Para tornar a lista suspensa pesquisável, experimente o método neste tutorial.
Auto preencher outras células ao selecionar valores na lista suspensa do Excel
Digamos que você tenha criado uma lista suspensa com base nos valores no intervalo de células B8:B14. Ao selecionar qualquer valor na lista suspensa, você deseja que os valores correspondentes no intervalo de células C8:C14 sejam automaticamente preenchidos em uma célula selecionada. Para resolver o problema, os métodos deste tutorial irão te ajudar.
Melhores Ferramentas de Produtividade para Office
Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência incomparável. Kutools para Excel oferece mais de300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para acessar o recurso que você mais precisa...
Office Tab traz interface com abas para o Office e facilita muito seu trabalho
- Habilite edição e leitura por abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie múltiplos documentos em novas abas de uma mesma janela, em vez de em novas janelas.
- Aumente sua produtividade em50% e economize centenas de cliques todos os dias!
Todos os complementos Kutools. Um instalador
O pacote Kutools for Office reúne complementos para Excel, Word, Outlook & PowerPoint, além do Office Tab Pro, sendo ideal para equipes que trabalham em vários aplicativos do Office.





- Pacote tudo-em-um — complementos para Excel, Word, Outlook & PowerPoint + Office Tab Pro
- Um instalador, uma licença — configuração em minutos (pronto para MSI)
- Trabalhe melhor em conjunto — produtividade otimizada entre os aplicativos do Office
- Avaliação completa por30 dias — sem registro e sem cartão de crédito
- Melhor custo-benefício — economize comparado à compra individual de add-ins