Necesito un código para no duplicar un valor

Para cuando ingreso un código en el UserForm 1 y no se duplique ingrese este código que encontré..

End If
dato = CODIGO.Value
contarsi = Application.WorksheetFunction.CountIf(Sheets("USUARIOS").Columns(1), dato)
If contarsi > 1 Then
MsgBox "El código ya existe, no se permiten duplicados"
CODIGO.SetFocus
Exit Sub
End If

Pero cada vez que ingreso un CÓDIGO me dice que "no se permiten duplicados" aunque el CÓDIGO no esta e igual lo ingresa a la hoja excel

1 Respuesta

Respuesta
1

H o l a:

Envíame tu archivo con la macro para revisarlo.

ya lo envíe! ;) apenas hice las preguntas (por favor revisar la pregunta anterior es el mismo archivo)

H o l a:

Este es el código para revisar los duplicados

Private Sub GUARDAR_Click()
'Por.Dante Amor
    Set h1 = Sheets("USUARIOS")
    '
    If CODIGO = "" Then
        MsgBox "Completar Todas las casillas"
        CODIGO.SetFocus
        Exit Sub
    End If
    Set b = h1.Columns("A").Find(CODIGO, lookat:=xlWhole)
    If Not b Is Nothing Then
        MsgBox "El código ya existe, no se permiten duplicados"
        CODIGO.SetFocus
        Exit Sub
    End If
    '
    u = h1.Range("A" & Rows.Count).End(xlUp).Row + 1
    h1.Cells(u, "A") = CODIGO
    h1.Cells(u, "B") = NOMBRES
    h1.Cells(u, "C") = APELLIDOS
    h1.Cells(u, "D") = DIRECCION
    h1.Cells(u, "E") = TELEFONO
    h1.Cells(u, "F") = CORREO
    h1.Cells(u, "G") = CDate(ingreso)
    h1.Cells(u, "H") = CDate(ingreso1)
    h1.Cells(u, "I") = CLASE
    h1.Cells(u, "J") = CANTIDAD
    '
    NOMBRES.Value = ""
    APELLIDOS.Value = ""
    DIRECCION.Value = ""
    TELEFONO.Value = ""
    CORREO.Value = ""
    CODIGO = Empty
    ingreso = Empty
    ingreso1 = Empty
    CLASE = Empty
    CANTIDAD = Empty
    '
    'Ordenar
    With h1.AutoFilter.Sort
            .SortFields.Clear
            .SortFields.Add Key:=h1.Range("B1"), SortOn:=xlSortOnValues, _
                Order:=xlAscending, DataOption:=xlSortNormal
        .Header = xlYes: .MatchCase = False
        .Orientation = xlTopToBottom: .SortMethod = xlPinYin: .Apply
    End With
    CODIGO.SetFocus
    '
    MsgBox "Código registrado"
End Sub

Sal u dos

R ecuerda valorar la respuesta. sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas