VBA - Valeur déjà existante

Bonjour à tous,

Je suis à la recherche d'un code VBA afin de comparer 2 colonnes dans 2 feuilles différentes afin de savoir si un nom y apparait déjà.

Je vous remercie d'avance pour votre aide

EvGef

bonjour,

un exemple est plus facile, ces valeurs, elles sont numériques, des dates, texte, ... ???

Bonjour BsAlv

Cela portera uniquement sur du texte.

Je souhaiterai faire apparaitre un message lorsqu'un nom de famille qui est déjà dans une liste est de nouveau saisi dans une autre liste sur une autre page.

J'ai réussi à le mettre en surbrillance avec les MFC mais je n'arrive pas à alerter l'utilisateur via VBA
Formule utilisée pour la MFC : =SI(SIERREUR(RECHERCHEV($F19;'Salariés Sortis'!A:C;1;FAUX);"non")="Non";FAUX;VRAI)

Bart,

Ci-joint un fichier.

11valeur-equiv.xlsx (10.94 Ko)

J'arrive à mettre le salarié déjà existant en rouge, mais je souhaiterai également un msgbox

Merci bcp

Geoffrey

Bonjour à tous,

Personne pour un petit coup de main svp ?

Merci d'avance pour votre aide

re,

13valeur-equiv.xlsb (17.85 Ko)

un change-event dans le module de la feuil1

Bonjour Bart,

Top, merci

Je regarde pour l'adapter à mon fichier et je te redirai ca.

Merci pour ta réactivité.

Geoffrey

Bonjour Bart,

J'ai remodelé un peu ton code à ma sauce et cela fonctionne très bien, je te remercie !

     Dim c, sNom, aA
     Set c = Intersect(Target, Range("B:B"))                                  'Toutes cellules modifiées des colonnes B
     If c Is Nothing Then Exit Sub                                            'Si aucun = fin
     If c.Cells.Count > 1 Then MsgBox "plusieurs cellules": Exit Sub          'Si plusieurs cellules = fin
     Sheets("Personnel Sorti").Range("G3:G1000").Name = "Sorti_Nom"           'Plage de recherche renommée en feuil2
     aA = [transpose(Sorti_Nom)]                                              'Uune matrice avec le Nom
     sNom = c.Offset(, 2 - c.Column)                                          'Nom modifié
     r = Application.Match(sNom, aA, 0)                                       'Recherche
     If IsNumeric(r) Then MsgBox "Attention => " & sNom & " !" & vbLf & vbLf & "Personnel sorti de chez ...  ! " & vbLf & vbLf & _
     "Merci de consulter la liste du personnel sorti et/ou de vous rapprocher du service Ressources Humaines !", _
     vbExclamation, "Personnel Sorti ! "

Cependant, je voulais savoir s'il était possible dans l'application Match de rajouter la formule "TROUVE"
Non pas directement pas dans l'application Match avec le critère -1 ; 0 ou 1 mais bel et bien une fonction TROUVE.
Si par exemple dans mon fichier, MARLEY était renseigné avec un "S" à la fin, tant qu'il trouve "MARLEY", je souhaiterai quand même recevoir le message d'alerte.

C'est faisable ça ?

Merci d'avance, et en tout cas merci pour le temps déjà passé et ton code qui fonctionne nickel !

Geof

re,

un essai sans savoir le contenu de votre colonne G de "Personnel Sortie" ou le valeur de sNom. Si ceci ne fonctionne pas, svp ajouter votre fichier en PJ.

Private Sub Worksheet_Change(ByVal Target As Range)
     Dim c, sNom, aA,FL
     Set c = Intersect(Target, Range("B:B"))                                  'Toutes cellules modifiées des colonnes B
     If c Is Nothing Then Exit Sub                                            'Si aucun = fin
     If c.Cells.Count > 1 Then MsgBox "plusieurs cellules": Exit Sub          'Si plusieurs cellules = fin
     Sheets("Personnel Sorti").Range("G3:G1000").Name = "Sorti_Nom"           'Plage de recherche renommée en feuil2
     aA = [transpose(Sorti_Nom)]                                              'Uune matrice avec le Nom
     sNom = c.Offset(, 2 - c.Column)                                          'Nom modifié
     fl = Filter(aA, sNom, 1, 1) 'filtrer tous les éléments de cette matrice, qui contiennent sNom, donc tous les "*sNoms*"
     If UBound(fl) > -1 Then
          MsgBox Join(fl, vbLf), vbInformation, "Noms parreils"
          MsgBox "Attention => " & sNom & " !" & vbLf & vbLf & "Personnel sorti de chez ...  ! " & vbLf & vbLf & _
                 "Merci de consulter la liste du personnel sorti et/ou de vous rapprocher du service Ressources Humaines !", _
                 vbExclamation, "Personnel Sorti ! "
     End If
End Sub

Bonsoir Bart,
Je regarde ça lundi au bureau.
Je vous tiens au courant.

Merci beaucoup.
Bonne fin de journée & bon week end.

Rechercher des sujets similaires à "vba valeur deja existante"