[XL 2016] Problème vérification cellules et doublons

hd_kevin

XLDnaute Nouveau
Bonjour,

J'ai un petit souci que je n'arrive pas à résoudre.

Dans ma colonne A, j'ai des adresses mails différentes et avec des doublons.
Dans ma colonne B, j'ai plusieurs valeurs "confirmé", "annulé"

Je ne souhaite conserver les mails qui ont "annulé" mais sans doublon et les mails "confirmé" et supprimer leur doublons (peu importe la valeur dans la colonne B)
Voici une capture pour expliquer cela.
Capture.JPG

Pourriez-vous m'aider ?

Merci
 

Fichiers joints

Dernière édition:

st007

XLDnaute Accro
Re : [XL 2016] Problème vérification cellules et doublons

:D

sur ton fichier, j'ai pas trouvé "non confirmé"

tu risque bien de trouver des réponses "annulé"
 

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Oups, j'ai adapté, je veux dire "annulé" au lieu de "non confirmé".
 

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Bonjour JHA,

Merci beaucoup. Etant novice, je n'arrive pas à le faire fonctionner. Peux-tu m'expliquer un peu plus en détail ?

Merci
 

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Merci JHA,

Ce que tu as mis dans le premier onglet "Feuil 2", je ne dois pas en tenir compte ?

Merci
 

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Sorry mais meme avec les explications, je m'en sors pas.

Dois-je d'abord faire la formule colonne G ou dois je d'abord copier les mails de la colonne A et les mettre en colonne G et faire le tri des doublons ?
 

JHA

XLDnaute Barbatruc
Re : [XL 2016] Problème vérification cellules et doublons

Re,

Non, tu peux supprimer la feuille, j'ai essayé un TCD mais pas concluant.

JHA
 

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Ok merci

Sorry mais meme avec les explications, je m'en sors pas.

Dois-je d'abord faire la formule colonne G ou dois je d'abord copier les mails de la colonne A et les mettre en colonne G et faire le tri des doublons ?
 

JHA

XLDnaute Barbatruc
Re : [XL 2016] Problème vérification cellules et doublons

Re,

Tu commences par le début des explications donc:
tu copies les adresses de la colonne "A" dans une autre colonne et tu supprimes les doublons (colonne "F" dans lexemple).
Ensuite tu copies la formule en colonne "G"
puis la formule en colonne "H"

JHA
 

gosselien

XLDnaute Barbatruc
Re : [XL 2016] Problème vérification cellules et doublons

Bonjour,

pas compris ce que finalement tu veux garder ou pas :)

P.
 

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Hello JHA,

J'ai testé et je ne suis pas parvenu à obtenir le résultat souhaité.
En effet, lors des doublons mails, ils conservent le status "annulé" alors qu'il y avait un status "confirmé".

Pour Gosselien, ce que je souhaite c'est conserver une seule adresse mail car j'ai des doublons.

Mes critères sont les suivants :
1. Si 2 adresses mails identiques mais dont l'un statut est confirmé et l'autre annulé, alors je conserve l'adresse mail avec le statut confirmé ( et toutes les autres valeurs qui se trouvent dans la meme ligne)

2. Je conserve les mails uniques (peu importe le statut)

3. Si 2 adresses mails identiques mais dont le statut est annulé pour les 2, alors j'en conserve un seul (et toutes les autres valeurs)

voici un fichier excel pour détailler mes explications.

Merci
Kevin
 

Fichiers joints

JHA

XLDnaute Barbatruc
Re : [XL 2016] Problème vérification cellules et doublons

Re bonjour,

j'ai appliqué les mêmes formules et apparemment, elles donnent le résultat souhaité.

Sinon, mets moi le résultat attendu.

JHA
 

Fichiers joints

JHA

XLDnaute Barbatruc
Re : [XL 2016] Problème vérification cellules et doublons

Re,

C'est presque ça, j'ai modifié la formule en colonne "G".

Par contre, ton soucis vient de la validation matricielle, tu ne dois pas valider par entrée mais avec les 3 touches en même temps, les accolades de chaque côté de la formule apparaîtront.

On crée des formules matricielles de la même façon que des formules standard simples, en les faisant précéder d’un signe égal (=), mais on les valide en appuyant sur CTRL+MAJ+ENTREE et non uniquement sur ENTREE.

JHA
 

Fichiers joints

hd_kevin

XLDnaute Nouveau
Re : [XL 2016] Problème vérification cellules et doublons

Bonjour JHA,

Merci beaucoup de t'occuper de mon problème... J'arrive effectivement à valider la formule pour la première cellule mais impossible de le faire pour les suivantes (+ de 2000 lignes). Peux-tu me dire comment procéder ?

P.S : j'ai réussi cette étape, je continue et je reviens vers toi. Merci =)

Merci
 
Dernière édition:

klin89

XLDnaute Impliqué
Re : [XL 2016] Problème vérification cellules et doublons

Bonjour à tous, :)

Une solution VBA, à tester sur PC.
VB:
Option Explicit
Sub test()
Dim a, i As Long, w(), x, y
    a = Sheets("Feuil1").Cells(1).CurrentRegion.Value
    With CreateObject("Scripting.Dictionary")
        For i = 2 To UBound(a, 1)
            If Not .exists(a(i, 1)) Then
                .Item(a(i, 1)) = VBA.Array(a(i, 1), a(i, 2), a(i, 3), a(i, 4))
            Else
                w = .Item(a(i, 1))
                If a(i, 2) = "confirmé" Then
                    w(1) = a(i, 2): w(2) = a(i, 3): w(3) = a(i, 4)
                End If
                .Item(a(i, 1)) = w
            End If
        Next
        x = .Count: y = .items
        'restitution
        With Sheets("Feuil2").Cells(1)
            .Resize(1, 4).Value = a
            With .Offset(1).Resize(x, 4)
                .Value = Application.Index(y, 0, 0)
            End With
            .Parent.Activate
        End With
    End With
End Sub
klin89
 

klin89

XLDnaute Impliqué
Re : [XL 2016] Problème vérification cellules et doublons

Re hd_kevin, :)

Peut-être plus clair :p
VB:
Option Explicit
Sub test()
Dim a, i As Long, n As Long
    a = Sheets("Feuil1").Cells(1).CurrentRegion.Value: n = 1
    With CreateObject("Scripting.Dictionary")
        .CompareMode = 1
        For i = 2 To UBound(a, 1)
            If Not .exists(a(i, 1)) Then
                n = n + 1
                a(n, 1) = a(i, 1): a(n, 2) = a(i, 2)
                a(n, 3) = a(i, 3): a(n, 4) = a(i, 4)
                .Item(a(i, 1)) = n
            Else
                If a(i, 2) = "confirmé" Then
                    a(.Item(a(i, 1)), 2) = a(i, 2)
                    a(.Item(a(i, 1)), 3) = a(i, 3)
                    a(.Item(a(i, 1)), 4) = a(i, 4)
                End If
            End If
        Next
    End With
    With Sheets("Feuil2").Cells(1)
        .Resize(n, 4).Value = a
        .Parent.Activate
    End With
End Sub
klin89
 

Discussions similaires


Haut Bas