Suppression doublon Excel 2013

poiuytreza -  
 ar168 -
Bonjour,

Je me tourne vers vous afin de trouver une solution à mon problème Excel.
Pour simplifier, le document contient 4 colonnes (Prénom / Référence / Date / Montant) et 3 lignes comme suit :
Bernard / azerty / 22012015 / 150 €
Bernard / azerty / 22012015 / -150 €
Francois / azerty / 22012015 / 150 €

Evidemment dans la réalité il y a des milliers de lignes...
Comment faire pour supprimer les transactions qui s'annulent, ici dans l'exemple les 2 premières lignes, afin de ne garder que la 3ème ligne ?

Merci par avance pour votre aide

A voir également:

7 réponses

poiuytreza
 
Pour compléter ma question et éclairer la problématique, je souhaiterais supprimer les 2 lignes remplissant les conditions suivantes :
- Prénom identique
- Référence identique
- Date identique
- Montants s'annulent si on les additionne

Merci d'avance à tous pour votre aide !
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Une proposition avec ce que j'ai compris
http://www.cjoint.com/c/EHoqVEi6Zen

Cordialement
0
poiuytreza
 
Bonjour et merci !
Cela fonctionne presque ! Mais en ayant voulu trop simplifier mon probleme je suis passé à côté d'un critère qui doit aussi être pris en compte dans la detection des lignes à supprimer.
Avec la solution proposée, les lignes 5,6,7 du document ci joint disparaissent. Alors que le critère "produit" doit permettre de ne supprimer que les lignes 5 et 7.
Bref pour être plus complet je joins un fichier qui ressemble plus à la réalité.
Encore merci !

http://www.cjoint.com/c/EHril16cfVV
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Il te suffisait d'adapter avec tes colonnes
http://www.cjoint.com/c/EHrkgSShwqn

Cordialement
0
poiuytreza
 
Merci pour ton aide.
Je viens d'essayer, ça se rapproche du résultat attendu mais il semble que le positionnement de la valeur negative de la quantité dans le tableau de depart influe sur le résultat final.
Voir exemple dans fichier joint : selon la position de la ligne qui comporte une quantite negative, la macro fonctionne (résultat correct, les lignes supprimées sont les bonnes) ou ne fonctionne pas (toutes les lignes sont effacees y compris celle qui devrait rester affichee).....
http://www.cjoint.com/c/EHroW4ZYmJU
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Effectivement, j'ai oublié de supprimer la clé dans le dictionnaire lorsqu'une paire de lignes à supprimer est trouvée
      If .Cells(valeur, coqua) = -.Cells(li, coqua) Then
n = n + 2
ReDim Preserve T(n)
T(n - 1) = valeur
T(n) = li
dico.Remove (cle)
End If

http://www.cjoint.com/c/EHrsibWKyVn

Cordialement
0
poiuytreza
 
Fantastique, ça fonctionne parfaitement.
Vraiment merci !
Excellente soirée.
(ps : comment passer le sujet en "résolu ?")
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
En haut à droite de ton premier message

Juste pour savoir
Combien de temps et sur combien de lignes ?

Bonne soirée à toi
0
poiuytreza > ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention  
 
Je viens de faire un essai sur un fichier de 58000 lignes, dont 11300 contenant des valeurs negatives.
La macro tourne en 2 min 20 environ.
Toutefois (c'est peut etre normal) je dois la relancer 3 fois pour passer de 11300 lignes avec valeurs < 0 à 80 puis à 25 puis enfin à zero. Sur ces "relances" la macro est instantannée.
Ca ne me pose pas de pb particulier, je precise ce point juste pour info.
C est dejà enorme de pouvoir gagner tout ce temps !!!
Merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ar168
 
Bonjour,

J'ai un problème similaire : je dois supprimer les infos reprises en double dans un classeur, en supprimant les deux mentions. Les liens vers les solutions ( les macros) ne sont plus actifs.

Merci d'avance.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Voilà le lien
http://www.cjoint.com/c/FKxtgGmt4HK

Cdlmnt
0
ar168
 
Merci, je vais voir puis reviendrai vers vous.
A+
0