Microsoft 365 Supprimer les lignes en doublon

Tony.R

XLDnaute Nouveau
Bonjour,

Je bloque au moment de faire une macro pour supprimer avec 2 critères et c'est là que je bloque.

Je souhaite supprimer les lignes selon 2 critères de doublon. Si dans la colonne A il y a des doublons et si dans la colonne B il y a aussi un doublon alors je souhaite supprimer la ligne où le montant de la colonne C est la plus petite.

En effet pour un numéro NOK il peut y avoir plusieurs DOM, donc pour faire un exemple selon le fichier joint, il y a une double doublon en ligne 2 et 3 et par conséquence il faut que la ligne 2 soit supprimer car c'est le montant plus petit.
Pareil pour la ligne 3 et 4 ayant un double doublon, la ligne 4 doit être supprimer (toujours la ligne du montant le plus petit)

Merci par avance.

Cordialement.
Tony
 

Pièces jointes

  • Classeur1.xlsx
    61.2 KB · Affichages: 7

Cousinhub

XLDnaute Barbatruc
Bonsoir,
Comme tu disposes de 365, tu peux aussi utiliser d'autres outils...
Comme Power Query
Ce que tu demandes peut être fait en quelques clics.
Regarde le fichier joint
Le code M :
PowerQuery:
let
    Source = Excel.CurrentWorkbook(){[Name="T_Data"]}[Content],
    GroupBy = Table.Group(Source, {"NOK", "DOM"}, {{"Nombre", each List.Max([Montant]), type number}})
in
    GroupBy
Bonne fin d'apm, et bon W-E
 

Pièces jointes

  • PQ_Tony_R.xlsx
    92.7 KB · Affichages: 4

Tony.R

XLDnaute Nouveau
Bonjour cousinhub,

Merci pour ta réponse rapide, je ne connais absolument pas PQ j'ajoute le code comme une macro ?
J'ai 365 au travail mais pas sur les autres postes. Est ce que je peux avoir également une macro pour que je puisse le faire fonctionner sur tous les postes ?

Merci par avance
Cordialement
 

Cousinhub

XLDnaute Barbatruc
Re-,
Non, PQ ne se met pas comme une macro dans l'éditeur VBE
Depuis la version 2016 d'Excel, cette fonctionnalité est nativement intégrée
Et disponible gratuitement en Add-On téléchargeable sur le site de µSoft pour les versions 2010 et 2103.
Pour ton fichier en pièce jointe, suis pas-à-pas ce déroulé :
- Clique dans la cellule A1
- Ruban "Données", clique sur "A partir de Tableau ou d'une Plage"
- Tu vas avoir une boîte de dialogue "Créer un Tableau" - Clique sur "OK"
- L'éditeur PQ va s'ouvrir....
- Sélectionne les 2 premières colonnes (Clique sur la 1ère puis, en maintenant la touche Shift, clique sur la 2ème)
- Clique sur "Regrouper Par" juste au-dessus, tu vas avoir cette fenêtre :
1685726886330.png

- Dans "Opération", clique sur "Max", et à droite, dans Colonne, sélectionne "Montant", puis "OK"
- Là, tu cliques sur "Fermer et Charger", et tu sélectionnes l'endroit (ou l'onglet) où tu veux charger le résultat de la requête)
- Il te reste juste à remettre le format de la 1ère colonne en "Nombre" (sans les décimales) - On aurait pu passer en "Texte" lors de la requête, mais j'ai laissé comme ça)
Et voilà, t'as rien tapé, t'as juste cliqué...
Bonne découverte de PQ
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

[Pour infos - précisions]
Et disponible gratuitement en Add-On téléchargeable sur le site de µSoft pour les versions 2010 et 2103.
Plus pour 2010 (*) malheureusement...
Faut bien que µSoft milite pour l'upgrade forcené !
:rolleyes:
Les versions d'Office suivantes sont prises en charge :
  • Microsoft Office 2010 Professional Plus avec Software Assurance
  • Microsoft Office 2013
 

Tony.R

XLDnaute Nouveau
Bonjour CousinHub,

Je suis en train de tester PQ mais je bloque au moment où je dois faire le max. J'ai un message d'erreur me disant qu'il ne peut pas convertir en nombre pourrais-tu me dire d'où vient mon problème s'il te plait ?

1685954865957.png
 

Cousinhub

XLDnaute Barbatruc
Bonjour,
Lorsque tu es dans l'éditeur PQ, tu cliques sur "Source" (la 1ère étape à droite), puis tu sélectionnes la colonne [Débit Saisi], et dans le ruban "Accueil" de cet éditeur, tu transformes le type en "Nombre décimal"
1685956491453.png

Sinon, remets ton classeur réel (sans données confidentielles, avec des montants bidons, et juste une dizaine de lignes)
Bon courage
 

Cousinhub

XLDnaute Barbatruc
Re-,
En utilisant un Tableau Structuré, tu n'as nul besoin de "prendre large", le TS va se dimensionner automatiquement...
L'idée d'une macro peut être séduisante, mais pas pour créer une requête.
Une fois la requête crée, une mise à jour suffit (ici, on peut effectivement associer un bouton pour la màj).
Recréer la requête à chaque fois nécessiterait la suppression de l'ancienne, puis création d'une nouvelle, avec nommage identique à l'ancienne...
Comme créer sa propre requête ne prend que quelques secondes, une petite formation auprès des autres personnes, voire l'envoi d'un fichier comprenant déjà cette requête, devrait faire l'affaire.
Regarde le fichier joint, je n'ai aucun pb avec la colonne [Débit Saisi]
 

Pièces jointes

  • Copie de Fichier de travail des exports - Copie.xlsm
    173 KB · Affichages: 1

Tony.R

XLDnaute Nouveau
Le simple fait de faire requête puis actualiser va remettre à jour mon fichier avec les lignes ajoutées ?

Du coup c'était quoi mon problème pourquoi je n'ai pas réussi à mettre en place la PQ ?

Par contre avec PQ je ne peux pas reprendre les autres colonnes ? car je vais en avoir besoin aussi
 

Cousinhub

XLDnaute Barbatruc
Re-,
Pour le blocage, c'est normal, car c'est un fichier ".xlsm", donc contenant potentiellement des macros.
Pour les autres colonnes, j'ai travaillé dessus, et me suis aperçu qu'il y avait 2 doublons, mais avec un numéro SA différent...
Les numéros de ligne en bleu, à gauche...
Il y a aussi des espaces un peu partout dans le fichier, notamment après les numéros de facture...

1685963952893.png


Pour ton problème, je ne sais pas...
Regarde le fichier joint, j'ai mis deux requêtes, celle de droite, la première fournie, et celle de gauche, qui comporte toutes les colonnes (et donc 2 lignes en plus, à cause des doublons cités supra)
J'ai également supprimé les lignes dont le débit saisi était à 0 (mais on peut les laisser, à toi de voir)
Comme le fichier est en ".xlsx", je pense que tu n'auras pas de problème de blocage
 

Pièces jointes

  • PQ_Tony_V3.xlsx
    227.6 KB · Affichages: 2

Tony.R

XLDnaute Nouveau
Pour les espaces je vais les enlever dans le numéro de facture.

Par contre si c'est 0 au débit cela signifie qu'il y a un montant au crédit et donc il faut faire le même principe et supprimer les doublons dont le montant est le plus petit.

Il doit y avoir un double doublon pour supprimer le montant débit ou crédit le plus petit. Un doublon sur le numéro de facture (G) ET un doublon sur le numéro projet (J).

Donc pour les lignes à 0 il faut se focaliser sur le crédit (I)

Par contre je ne connais toujours pas mon erreur qui fait que je ne peux pas faire moi même le PQ...
 

Cousinhub

XLDnaute Barbatruc
Re-,
Pour ton erreur, quand tu es dans l'éditeur PQ, est-ce que tu as un morceau de rouge dans l'en-tête de colonne (signalant qu'il y a des lignes en erreur) comme ceci :
1685966773100.png

Si tu sélectionnes la colonne [Débit Saisi], est-ce que tu peux la modifier en "Nombre décimal" comme indiqué dans mon #9 avant le regroupement? (et qu'il n'y a pas ce signalement d'erreur?)
Pour les doublons que je cite, il n'y a que des débits, pas de crédits????
Pour les 0 en débit, dans l'exemple ci-dessous, je ne dois donc conserver que la 2ème ligne (Crédit max)?

1685967106363.png
 

Discussions similaires

Réponses
22
Affichages
775
Réponses
6
Affichages
136

Statistiques des forums

Discussions
312 209
Messages
2 086 271
Membres
103 168
dernier inscrit
isidore33