Extraire les valeurs identiques en fonction de 2 colonnes [Résolu/Fermé]

Signaler
-
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
-
Bonjour à tous,

Voilà, après plusieurs recherche je n'ai pas réussi à trouver de solutions. J'ai un tableau qui se présente comme ceci:
colonne 1 colonne 2
fournisseur 1 site A
fournisseur 2 Site B
fournisseur 2 Site A
fournisseur 2 Site D
fournisseur 3 Site C
fournisseur 3 Site A
fournisseur 4 Site B
fournisseur 5 Site A
fournisseur 5 Site B

je cherche à mettre en colonne 3 la liste des fournisseurs communs aux sites A et B. Sur l'exemple ci-dessus, je derais donc retrouver le fournisseur 2 et 5.

Avez-vous une idée de la façon dont je pourrais faire cela?

Merci d'avance :)

4 réponses

Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Bon.
Par une macro, fonction personnalisée :

création :
Depuis le classeur concerné :
1- Alt + F11
2- Insertion/Module
3- Copiez-collez ce code :
Function Fourn_By_Site(Plage As Range, Site1 As String, Site2 As String, Rang As Integer) As String
Dim Cel As Range, Liste() As String, dico As Object, i As Long

Set dico = CreateObject("Scripting.Dictionary")
For Each Cel In Plage
    If UCase(Cel.Offset(0, 1)) = UCase(Site1) Or UCase(Cel.Offset(0, 1)) = UCase(Site2) Then
        If Not dico.Exists(Cel.Value) Then
            dico(Cel.Value) = UCase(Cel.Offset(0, 1))
        ElseIf dico(Cel.Value) <> UCase(Cel.Offset(0, 1)) Then
            ReDim Preserve Liste(i)
            Liste(i) = Cel.Value
            i = i + 1
        End If
    End If
Next
Fourn_By_Site = Liste(Rang - 1)
End Function

4- fermez la fenêtre VBA

Utilisation :
Depuis votre feuille, dans la cellule C1, saisir la formule :
=Fourn_By_Site(A1:A9;"Site A";"Site B";LIGNE())

Formule à étirer vers le bas de la colonne C.


Amélioration possible :
Empêcher l'affichage des #VALEURS le cas échéant...
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
Bonjour,

Dans ton exemple, le Fournisseur 3 n'est pas présent sur le Site B. Or tu souhaites le retrouver.
Erreur ?
Ou incompréhension de ma part...
Bonjour Pijaku,

C'est en effet une erreur de ma part :s. Je veux parler du fournisseur 2 et 5.
Merci du coup de main Pijaku, ça marche parfaitement :)
Messages postés
12186
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
15 octobre 2020
2 497
De rien.
A+