vba : jointure pour creation feuille 3 avec donnees de 2 feuilles

  • Initiateur de la discussion Initiateur de la discussion olives
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

O

olives

Guest
re-bonjour les amis !

voila mon petit problème pour des connaisseurs , je galère, si vous avez le code vba pour cela :

je veux parcourir toutes les cellules de la colonne A de la 1ere feuille ,
puis chercher/ parcourir dans la 2ieme feuille l'existence de cette cellule dans la colonne A (plusieurs fois trouvée possible ou pas)
si trouvé ou pas , créer une 3ieme feuille avec données de la feuille 1 en ligne et données de la feuille 2 associée en colonne , si pas trouvé , alors je laisse les données de feuille 2 à blanc

je mets un exemple très simple pour aider

merci d'avance
 

Pièces jointes

Re : vba : jointure pour creation feuille 3 avec donnees de 2 feuilles

Bonjour olives,

Il y a surement moyen d'optimiser un peu plus mais ça devrait marcher

Code:
Sub test()
Dim i As Long, j As Long, k As Long, Col As Long, Code As Long
    j = 2
    With Sheets("feuil1")
        For i = 2 To .Range("A65536").End(xlUp).Row
            Code = .Cells(i, 1).Value
            Sheets("Feuil3").Range("A" & j).Value = Code
            Sheets("Feuil3").Range("B" & j).Value = .Cells(i, 2).Value
            If Application.CountIf(Sheets("feuil2").Range("A1:A65536"), Code) > 0 Then
                Col = 3
                For k = 2 To Sheets("Feuil2").Range("A65536").End(xlUp).Row
                    If Sheets("Feuil2").Range("A" & k).Value = Code Then
                        Sheets("feuil3").Cells(j, Col).Value = Sheets("Feuil2").Range("B" & k).Value
                        Sheets("feuil3").Cells(j + 1, Col).Value = Sheets("Feuil2").Range("C" & k).Value
                        Col = Col + 1
                    End If
                Next k
                j = j + 2
            Else
                j = j + 1
            End If
        Next i
    End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
987
Réponses
3
Affichages
430
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
904
Retour