Supression de doublon avec condition. Possible ?

Bonjour, tout le monde !

Alors, voici ma question.
J'ai un fichier Excel que je met a jour régulièrement.

Dans ce fichier j'ai en colonne A une date, en colonne B des numéros de client, en C et autres des informations les concernant.

Dans ce fichier je souhaite supprimer les doublon de la colonne B en fonction de la date de la colonne A.

Je m'explique.

Je veux que sur un mois en cours je n'ai que mon numéro de client en colonne B apparaisse qu'une seul fois.
Mais si le client ma contacter en janvier et en février, le numéro sera visible 2 fois dans la colonne B mais je ne souhaite pas que cela gêne et donc ne pas supprimer de doublon.

Exemple :

A B C
1DateNuméro de client
Autres infos
201/01/2021123456
302/01/2021987654
402/01/2021987654
503/01/2021987654
601/02/2021123456
701/02/2021123456
802/02/2021987654

En ligne 2, 3, 4, 5 nous avons des client sur le mois de janvier.
Je souhaite avoir 1 seul fois le même numéro de client sur un même mois.

Une formule qui ressemble un peu a :

Si "une valeur de la colonne B" est égale à "une autre valeur de la colonne B" ET que "en 1 nous sommes dans le même mois"
Supprimer le doublon

Mais

Si la date de B est dans un mois différent, ne pas supprimer.

Faire cette chose est possible ?

Si oui, pouvez vous me sauver la vie en m'expliquant comment faire ? x)

Je vous remercie chaudement par avance pour vos réponses

Bonsoir et

Une petite présentation ICI serait la bienvenue

A moins de transposer ton tableau ailleurs en VBA ou de créer un TCD (à voir), ce que tu demandes est impossible

@+

Quand tu dis "ici" je suppose que tu voulais mettre un lien que tu as oublié

Arf, je me doutais bien que j'en demandais trop a ce pauvre Excel.

Je suis nouveau sur tout ceci, tu peux me dire en bref en quoi VBA serais mieux ?

Et qu'es-ce que TCD ?

Re,

C'est corrigé

J'ai oublié une autre solution (peut-être) Power Query

VBA permet d'aller plus loin dans les possibilités déjà énormes d'Excel

TCD = Tableau Croisé Dynamique (pour les intimes)

Bonjour à tous,

tu peux aussi te créer une clé avec =ANNEE(A2)&"_"&MOIS(A2)&"_"&"_"&B2

Ensuite sélectionner ta plage et 'Données / Outils de données / Supprimer des doublons' en cochant la colonne de ta clé.
eric

Salut eriic,

Pour moi ce n'est ce qui est demandé j'ai peut-être mal compris

"Je veux que sur un mois en cours je n'ai que mon numéro de client en colonne B apparaisse qu'une seul fois."

Il parle uniquement du numéro de client en colonne B, pas des lignes

@+

Bonjour,

ah oui, possible de comprendre comme ça aussi.
Je m'étais plus basé sur le titre (Suppression de doublon) et lu distraitement le reste.

Mais si c'est toi qui a bien compris, c'est dommage de perdre l'info et les possibilités de traitement ultérieurs.
Il vaut mieux effectivement extraire ailleurs.
eric

Bonjour tout le monde,

On pourrait tricher avec la couleur de la police, on conserverait ainsi les données intactes ?

A moins que je n'ai rien compris,

12classeur1.xlsm (17.95 Ko)

Cordialement,

Bonjour à tous,

Voici une proposition avec un tableau structuré (nommé "Suivi"), à l'aide d'un dictionnaire qui teste la concaténation des dates au format "AAMM" et du code client.

Sub test()

Dim t()

Set dico = CreateObject("scripting.dictionary")
With Sheets(1).Range("Suivi")
    ReDim t(1 To .Rows.Count, 1 To .Columns.Count)
    For i = 1 To .Rows.Count
        If Not dico.exists(Format(.Cells(i, 1).Value, "YYMM") & .Cells(i, 2).Value) Then
            dico(Format(.Cells(i, 1).Value, "YYMM") & .Cells(i, 2).Value) = ""
            n = n + 1
            For k = 1 To .Columns.Count
                t(n, k) = .Cells(i, k).Value
            Next k
        End If
    Next i
    .Delete
    .Cells(1, 1).Resize(n, UBound(t, 2)) = t
End With

End Sub
15classeur1.xlsm (23.58 Ko)

Cdlt,

Rechercher des sujets similaires à "supression doublon condition possible"