Verifier que la valeur textbox n'existe pas déjà

BONJOUR

Je souhaite vérifier que la valeur inclue dans ma textRaison( TextBox) ne soit pas déjà existante dans la colonne F, si oui j'empêche la validation

Hors le message s'affiche si la valeur ressemble de près ou de loin à une des valeurs de la colonnes, comment faire pour qu'il ne s'agisse que tu cas où la valeur est exactement la même,

en plus si il s'agit d'un nom composé exemple : SARL SSK la macro le valide si c'stait seulement SSK la macro ne valide pas !!

en colonne "A" j'ai le nom des distributeurs avec lesquels le client est en contrats je voudrais aussi que le message m'indique en cas de redondance le nom du distributeur intial

Merci d'avance !

Private Sub TxtRaison_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)

Dim rg As Range

If TxtRaison.Text = "" Then
Exit Sub
End If
Set rg = Sheets("TRI avec code client").Range("F2:F319").Find(Replace(TxtRaison, " ", vbNullString))

If Not rg Is Nothing Then

    MsgBox "Le client existe déja"
    Cancel = True

End If

Bonjour Nismo,

bonne année 2019 !

je te propose ce code VBA :

Private Sub TxtRaison_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
  Dim chn$, rg As Range
  chn = Replace$(TxtRaison.Text, " ", ""): If chn = "" Then Exit Sub
  Set rg = Worksheets("TRI avec code client").[F2:F319].Find(chn, , -4163, 1, 1)
  If Not rg Is Nothing Then MsgBox "document existant": Cancel = True
End If

note qu'avec le Replace$(), ça enlève tous les espaces, même ceux qui sont au milieu du texte ; si tu as besoin d'enlever seulement d'éventuels espaces à gauche et à droite, met à la place : chn = Trim$(TxtRaison.Text) ; si y'a jamais d'espaces à gauche et que tu as besoin d'enlever seulement d'éventuels espaces à droite, met : chn = RTrim$(TxtRaison.Text)

dhany

coucou dhany Bonne Année 2019,

j'ai essayé ton code ça marche pas , pour les noms simple ex: SSK la macro réagit

mais pour les noms composés genre SARL SSK elle valide même si le nom existe

alors essaye avec : .Find(chn, , -4163, 2, 1)

dhany

rien aussi ça valide

ben là, j'pige pas, car le 2 qui remplace le 1 signifie xlPart au lieu de xlWhole ; donc ça trouve "SSK" même s'il fait partie d'un texte plus long, comme "SARL SSK".

dhany

pour t'aider davantage, il faudrait ton classeur (sans données confidentielles) ; pour cela, tu peux utiliser le bouton « Ajouter des fichiers » qui est situé juste sous la fenêtre d'édition de ton post.

dhany

coucou dhany

le fichier etait trop volumineux

j'ai joint une version "Light"

16test-2019.xlsm (0.96 Mo)
screen

ben euh, j'vois pas bien en quoi il est allégé.

dhany

Rechercher des sujets similaires à "verifier que valeur textbox existe pas deja"