Tri doublon en fonction de la date

Bonjour,

Je fais appel à votre aide pour essayer de me débloquer sur ma macro.

J'essaie d'améliorer un fichier Excel pour faciliter l'analyse de données clients. Pour vous situer le contexte, lorsqu'on achète sur un site, il se peut qu'on ai à refaire un paiement suite à une erreur de saisie ou notre carte ne marche pas (plafond etc).

Le but dans mon excel serait de faire un bouton qui filtrerai les différentes transactions en fonction de la date. Que l'algorithme voit si une même personne a fait un paiement le même jour et que la dernière valeur de ce jour soit prise en compte.

Dans la PJ il y a un exemple d'une personne (identité changé en nom commun) qui à fait 5 paiements refusés pendant le même jour puis un paiement accepté 11 jours plus tard. Il faudrait réussir à afficher uniquement le dernier paiement refusé du premier jour et le dernier paiement accepté de l'autre jour.

La macro que j'ai réussit à faire filtre mais uniquement sur la dernière transaction de la personne, la variable de la date n'est pas prise en compte et je n'arrive pas à le faire fonctionner.

Sub filtre()
Dim i As Long, j As Long
Application.ScreenUpdating = False
For i = Cells(Rows.Count, 11).End(xlUp).Row To 2 Step -1
For j = Cells(Rows.Count, 11).End(xlUp).Row To 2 Step -1
If Cells(j, 11) = Cells(i, 11) Then
If Cells(j, 4) < Cells(i, 4) Then
Cells(j, 1).EntireRow.Delete
End If: End If
Next j: Next i
End Sub

Merci dans tous les cas pour votre aide.

Bonjour,

Ce ne serait pas plus simple avec un TCD, ou avec une requête PowerQuery ?

capture

Bonjour Eric,

J'y ai pensé mais le fichier global fait environ 90k lignes donc je pense que la solution vba est la plus optimisée sur le long terme.

Bonne journée,

Yannou

Non, regardez d'abord PowerQuery.

Bonjour à tous,

Une approche via Power Query.

Le regroupement est effectué sur l'état et l’adresse électronique. Une autre démarche est possible.

Tous les enregistrements ne sont pas en ordre croissant ou décroissants sur la date, c'est voulu?

Bien que Power Query soit la meilleure solution à mon avis, je propose le tri avec une macro pour avoir le choix.

.

Bonjour à tous,

Merci pour vos réponses dans un premier temps.

Je suis en train de me renseigner sur le powerQuery, pour moi il s'agissait de ligne déroulante et je ne voyais pas l'utilité pour un nombre plus grand d'échantillon.

Concernant les dates il s'agit d'un ordre décroissant, la plus ancienne est en haut et la plus récente sera ajouté en bas.

JFL,

J'ai une question concernant ce que tu as fais. Le rapprochement Query se fait automatiquement ou tu l'as fais à la main?

Je vois le tableau t_Data_2 mais je ne comprends pas vraiment comment il est utilisé.

Merci pour ta réponse.

Yann

Bonjour à tous,

Le tableau structuré "t_Data_2" est le résultat final de la requête Power Query.

Un clic droit dans une cellule de ce tableau, puis "Table / Modifier la requête" vous ouvrira l'éditeur Power Query. Pour pourrez prendre connaissances des différentes étapes appliquée au tableau source "t_Data" (à droite dans la fenêtre de l'éditeur).

Je suis en train de regarder et j'ai plusieurs questions:

dans le code suivant sur PQ:

Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=t_Data;Extended Properties=""

Comment avez vous calibré les colonnes H et I comme variable de la requête.

De plus lorsque je fais ok dans le tableau du PQ, j'ai un message d'erreur me disant que j'ai une erreur lors de l'initialisation de la source de données.

Merci pour votre temps.

Yann

Je suis en train de regarder et j'ai plusieurs questions:

dans le code suivant sur PQ:

Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=t_Data;Extended Properties=""

Comment avez vous calibré les colonnes H et I comme variable de la requête.

De plus lorsque je fais ok dans le tableau du PQ, j'ai un message d'erreur me disant que j'ai une erreur lors de l'initialisation de la source de données.

Le code (langage M pour Power Query) se trouve dans le module "Editeur avancé"

image

Ce code représente la transcription des différentes étapes appliquées à votre source initiale.

Concernant le "calibrage des colonnes H et I", je ne comprends pas le sens de votre question.

Pour le message d'erreur, pourriez-vous faire une copie-écran ?

Ok alors premièrement je ne trouve pas l'onglet éditeur avancé, on dirait bien que nous avons deux versions différentes d'Excel..

image

Concernant l'erreur voici la capture :

image

A mon travail nous avons la version 2013 d'Excel et le PQ semble etre intégré depuis 2016, impossible donc..

Retour à la case départ

Bonjour de nouveau,

A mon travail nous avons la version 2013 d'Excel et le PQ semble etre intégré depuis 2016, impossible donc..

Retour à la case départ

Pour Excel 2010 et 2013, il est nécessaire d'installer un complément (gratuit) de Microsoft.

Rechercher des sujets similaires à "tri doublon fonction date"