[Réglé] Sur 2 feuilles comparaison de colonne de nom croisn avec séparation de ligne

apicius46

XLDnaute Junior
Bonjour à tous,
Merci à toute la communauté de m'aider
Dans ce titre peu évocateur je vais vous faire une description plus précise.
Je m'occupe d'un club de foot (secrétaire) et je souhaiterai récupérer les info des licenciés via la ligue pour le mettre sur mon tél.
Donc je me retrouve avec 2 fichiers:
* Ligue avec 17 colonnes
* Tél avec 56 colonnes

2 sont communes et nous intéressent particulièrement. Nom et prénom
- ligue Nom en A et prénom en B
- Tél Nom en D et prénom en B

Je souhaiterai faire 1 fichier ou serait fusionner et comparer les 2 feuilles avec comme base feuille Tél. Si nom et prénom identique même ligne si différent de ligue sauter une ligne pour aller à la suivante.
Voir mon exemple...
J’espère qu'il sera plus parlant.


Merci de votre aide !!!
David:)
 

Pièces jointes

  • Comparaison et liste de 2 feuilles Nom prenom.xlsx
    13 KB · Affichages: 37
Dernière édition:

Bebere

XLDnaute Barbatruc
Re : Sur 2 feuilles comparaison de colonne de nom croissan avec séparation de ligne s

bonsoir Apicius
à mettre dans un module classeur
Code:
Public Sub TelLigue()   
    Dim L As Long, i As Long, j As Long, TblLigue, TblTel

    TblLigue = Feuil1.UsedRange
    TblTel = Feuil2.UsedRange

    L = 1
    For i = 2 To UBound(TblTel, 1)
        For j = 2 To UBound(TblLigue, 1)
            'présent dans tel et ligue
            If UCase(TblTel(i, 4)) & UCase(TblTel(i, 2)) = UCase(TblLigue(j, 1)) & UCase(TblLigue(j, 2)) Then
                L = L + 1
                Feuil3.Range("D" & L).Value = TblTel(i, 4): TblTel(i, 4) = "": TblLigue(j, 1) = ""
                Feuil3.Range("B" & L).Value = TblTel(i, 2)
                Feuil3.Range("F" & L).Value = TblTel(i, 6)
                Exit For
            End If
        Next j
    Next i

    'tel
    For i = 2 To UBound(TblTel)
        If TblTel(i, 4) <> "" Then
            L = L + 1
            Feuil3.Range("D" & L).Value = TblTel(i, 4) 'nom
            Feuil3.Range("B" & L).Value = TblTel(i, 2) 'prénom
            Feuil3.Range("F" & L).Value = TblTel(i, 6) 'given
        End If
    Next i

    'ligue
    For i = 2 To UBound(TblLigue)
        If TblLigue(i, 1) <> "" Then
            L = L + 1
            Feuil3.Range("D" & L).Value = TblLigue(i, 1) 'nom
            Feuil3.Range("B" & L).Value = TblLigue(i, 2) 'prénom
        End If
    Next i

End Sub
 

apicius46

XLDnaute Junior
Re : Sur 2 feuilles comparaison de colonne de nom croissan avec séparation de ligne s

Bonsoir Bebere,

Whaou, c'est génial, ca fonctionne mieux que prévu pour moi...Désolé je ne suis pas calé comme vous. Je vais même pouvoir surement améliorer mes ajout de lignes pour assembler encore plus vite les deux données.
C'est inespéré le gain de temps que je vais avoir.

Vous êtes trop fort.

Cordialement
Apicius46

Ps: Je fini de regarder plus attentivement et je mets réglé demain ou après demain
 

Discussions similaires

Statistiques des forums

Discussions
312 206
Messages
2 086 214
Membres
103 158
dernier inscrit
laufin