Bonjour
Voulant éviter les doublons dans ma base de données, j'ai écrit le code suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub TbxUs_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Dim Plg As Range, Cel As Range, a As Byte, b As Byte
Set Plg = Range("TbAgt[Users]")
b = Len(TbxUs.Text)
For Each Cel In Plg 'boucle sur tous les users
    If Right(Cel, b).Value = TbxUs.Value Then
        a = MsgBox("Ce User existe déjà ; Voulez-vous modifier le user ?", vbYesNo, "Attention !") 'message
        If a = vbYes Then   'Si oui au mess
            Cancel = True   'annule la sortie de la textbox
            TbxUs.SelStart = 0  'début de la sélection
            TbxUs.SelLength = Len(TbxUs)    'Lgr de la sélection
            Exit Sub    'sortie
        End If
    End If
Next Cel
End Sub
à la ligne "If Right(Cel, b).Value = TbxUs.Value Then" je reçois le message "Objet requis"
quand je teste dans la fenêtre exécution, j'ai
?TbxUs.Value résultat 8750
?Right(Cel, 4).Value résultat 8750

Est-ce que quelqu'un peut m'aider svp.
Merci