Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres comparaison nom prenom avec prenom nom

BIL boud

XLDnaute Occasionnel
bonjour

jai deux liste de nom prenom , une dans la colonne A et la 2 deuxieme dans la colonne C
l'objectif est de chercher les noms prenoms de la colonne C dans la colonne A
pour les nom prenom qui se compose d'un seul nom et un seul prenom (Jak LABIN) mon code fonctionne tres bien , mais des que jai un nom prenom qui est compose de 3 mot ( Jak LE LABIN) mon code ne fonctionne plus

voici le code :
VB:
Function ch_sans_accent(ch_characters As Range)
liste_accents = "ÉÈÊËÔéèêëàçùôûïî"
liste_sans_accents = "EEEEOeeeeacuouii"
tempo = ch_characters.Value
For i = 1 To Len(tempo)
        s = InStr(liste_accents, Mid(tempo, i, 1))
        If s > 0 Then Mid(tempo, i, 1) = Mid(liste_sans_accents, s, 1)
Next
ch_sans_accent = tempo
End Function


Sub recup_absence()


Dim k As Long, L As Long
Dim x, y, w, z As String


For L = 2 To 20
a = ch_sans_accent(Cells(L, 1))

If Cells(L, 1) <> "" Then
    Tablo = Split(Cells(L, 1), " ")
    If UBound(Tablo) = 1 Then
x = Left(a, InStr(a, " ") - 1)
y = Mid(a, Len(x) + 2, Len(a))
End If
End If


For k = 24 To 100
b = ch_sans_accent(Cells(k, 3))
If Cells(k, 3) <> "" Then
    Tablo = Split(Cells(k, 3), " ")
    If UBound(Tablo) = 1 Then
w = Left(b, InStr(b, " ") - 1)
z = Mid(b, Len(w) + 2, Len(b))

End If
End If

            
              If Cells(L, 1) <> "" Then
              If Cells(k, 3) <> "" Then
             If LCase(b) = LCase(a) Then
             Cells(L, 2) = k - 23
          
              ElseIf LCase(x) = LCase(z) And LCase(y) = LCase(w) Then
              Cells(L, 2) = k - 23
            End If
            End If
             End If
        
    
        
    Next
Next

End Sub

ce que 'jai essaye :
Code:
If UBound(Tablo) = 2 Then
le probleme c que il me recupere toujour le premier mot et on sait pas si c bien le nom ou le prenom
exemple

Jak LE LABIN
avec ce code
Code:
If UBound(Tablo) = 2 Then
il va me recuperer Jak et LE LABIN separement
imaginon que dans la 2 eme liste on trouve le nom et prenom mais inverssement :
LE LABIN Jak mon code va recuperer LE et LABIN Jak
du coup la comparaison est false alors que c le mm nom et prenom

je ne sais pas trop comment men sortir c ppour cela je viens vers vous afin de maider dans mon probleme

ps : j'ai pense a utiliser la proprite
Code:
InStr
mais j'arrive pas a dessocier le nom prenom en 3
Code:
Tablo = Split(Cells(k, 3), " ")
 

Discussions similaires

Réponses
4
Affichages
218
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…