Valores duplicados en hoja de excel con macro

Necesito ayuda con esta macro tengo una tabla donde ingreso datos, quiero que cuando encuentre uno repetido me salga un mensaje que ya esta registrado.

Private Sub CommandButton_aceptar_Click()

prueba = WorksheetFunction.CountIf(Sheets("Datos").Range("A:A"), dni)
If prueba = dni Then
MsgBox ("Ya se encuentra Registrado")
Else
End If

TextBox_dni.SetFocus

Worksheets("Datos").Range("A2").EntireRow.Insert 'Inserta una fila nueva
Sheets("Datos").Range("A2") = TextBox_dni.Value
Sheets("Datos").Range("B2") = TextBox_nombre.Value
Sheets("Datos").Range("C2") = TextBox_fase.Value
Sheets("Datos").Range("D2") = TextBox_cargo.Value
Sheets("Datos").Range("E2") = TextBox_empresa.Value

TextBox_dni = Empty
TextBox_nombre = Empty
TextBox_fase = Empty
TextBox_cargo = Empty
TextBox_empresa = Empty
End Sub

1 Respuesta

Respuesta
1

>Prueba esto

Private Sub CommandButton_aceptar_Click()
'>Adriel Ortiz
'
Set h = Sheets("Datos")
'
    dni = Val(TextBox_dni)
    Set col = h.Columns("A")
    Set b = col.Find(dni, lookat:=xlWhole)
    '
    If Not b Is Nothing Then
    MsgBox "En dni ya existe"
    Exit Sub
    Else
        Worksheets("Datos").Range("A2").EntireRow.Insert 'Inserta una fila nueva
        h.Range("A2") = TextBox_dni.Value
        h.Range("B2") = TextBox_nombre.Value
        h.Range("C2") = TextBox_fase.Value
        h.Range("D2") = TextBox_cargo.Value
        h.Range("E2") = TextBox_empresa.Value
        TextBox_dni.SetFocus
    End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas