Extraire les données communes à 2 colonnes

nauj

XLDnaute Junior
Bonjour Forum,
J'ai besoin de votre aide !
J'ai deux colonnes intégrant différentes données. Je souhaiterais extraire les données communes à ces deux colonnes sur une troisième colonne.
Vous avez un petit exemple ci-attaché.
Merci d'avance pour votre aide
 

Pièces jointes

  • Extract valeurs communes de 2 colonnes.xls
    14 KB · Affichages: 504

job75

XLDnaute Barbatruc
Re : Extraire les données communes à 2 colonnes

Bonjour nauj, capricorne68,

Ah c'est plus compliqué capricorne68.

Entrer en D2 la formule matricielle (validation par Ctrl+Maj+Entrée) suivante et tirer vers le bas :

Code:
=INDEX(B$2:B$9;PETITE.VALEUR(SI(ESTNUM(EQUIV(A$2:A$9;B$2:B$9;0));EQUIV(A$2:A$9;B$2:B$9;0));LIGNE()-1))

Edit : ou encore, toujours en formule matricielle :

Code:
=INDEX(B$2:B$9;PETITE.VALEUR(SI(NB.SI(B$2:B$9;A$2:A$9);EQUIV(A$2:A$9;B$2:B$9;0));LIGNE()-1))

A+
 
Dernière édition:

Pyrof

XLDnaute Occasionnel
Re : Extraire les données communes à 2 colonnes

Bonjour,

Voici une solution par macro
Code:
Sub dudule()
Dim tab1       'Crée une variable
Set tab1 = CreateObject("Scripting.Dictionary")

' lecture colonne 1
l = 2
While Cells(l, 1) <> ""
    cle = Cells(l, 1)
    If tab1.exists(cle) = False Then tab1(cle) = 1
    l = l + 1
Wend
' lecture colonne 2
l = 2
While Cells(l, 2) <> ""
    cle = Cells(l, 2)
    If tab1.exists(cle) = True Then tab1(cle) = tab1(cle) + 1
    l = l + 1
Wend
'ecriture du résultats
l = 1: c = 4
For Each cle In tab1
    If tab1(cle) = 2 Then
        l = l + 1
        Cells(l, c) = cle
    End If
Next
End Sub
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 196
Messages
2 086 101
Membres
103 116
dernier inscrit
kutobi87