Existem várias maneiras de impedir a digitação de dados repetidos no Excel usando VBA. Abaixo, apresentamos duas opções:
Opção 1: Usando a validação de dados
Com essa validação de dados, o Excel permitirá que você insira apenas valores únicos na coluna selecionada.
Opção 2: Usando o evento BeforeDoubleClick
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim i As Long Dim lastRow As Long Dim data As String
If Target.Column = 1 Then 'coluna Adata = Target.ValuelastRow = Cells(Rows.Count, Target.Column).End(xlUp).RowFor i = 1 To lastRow If data = Cells(i, 1).Value And i <> Target.Row Then Cancel = True MsgBox "Este valor já foi inserido na coluna A!", vbCritical, "Dados Repetidos" Exit Sub End IfNext i End If
End Sub
Com esse código, o Excel verificará se o valor de uma célula na coluna A já foi inserido anteriormente na mesma coluna. Se sim, a digitação será impedida e uma mensagem de erro será exibida.