VBA-compter lignes sans doublons avec plusieurs conditions

Bonjour,

je suis nouveau sur le forum et aurais besoin de votre aide car je suis dans une impasse.

je connais un petit peu VBA mais pas assez pour élaborer une correspondant à mon problème.

je vous explique, j'ai utilisé des formules types sommeprod pour compter le nombre de lignes avec certaines conditions et en évitant de compter x fois une référence mais le fichier Excel n'aime pas trop au delà de 5000 lignes.

je suppose donc que je n'ai pas le choix que de passer par une VBA pour contourner ce problème.

vous trouverez en pièce jointe mon fichier et en jaune les cellules où figurent actuellement les formules.

je voudrais pouvoir actualiser les résultats en fonction du mois sélectionné dans le menu déroulant (à gauche).

J'ai mis les commentaires dans le fichier pour que vous puissiez comprendre mon besoin.

je n'ai alimenté que deux mois (janvier et février) avec quelques lignes car normalement j'ai 150000 lignes par mois...la loose!

Merci par avance pour votre précieuse aide!

hello,

aucune âme charitable pour m'aider?

Bonjour

Faisable sur PowerQuery (add on pour 2010, intégré dans 2016) et TCD mais à vérifier sur le volume.

Quelques remarques :

Tu veux te baser sur l'unicité des factures mais on retrouve certains numéros sur les 2 mois...

La notion d'Express, Standard ou Relais ne figure pas dans les données il me semble...

Bonjour,

Je suis toujours étonné de voir 1 onglet par mois, alors que le tout pourrait être dans un seul, les dates faisant office de séparation dans un soustotal ou un TCD

Tu te compliques les choses

P.

Merci 78chris pour ton retour.

en fait je me suis trompé sur ma version Excel je suis sur 2013.

pour ma requête, la notion de Express, standard et Relais sont matérialisées par les données suivantes:

Chronopost Europe = Standard

Chronopost International= Express

Chronopost C13= Express

Chronopost retour Classic = Retour

Colissimo Domicile sans signature = Standard

Colissimo Retour France = Retour

Ups Standard = Standard

Ups Return = Retour

Chronopost C13 Relais = Relais

UPS Access Point DR Standard = Relais

mais j'ai une autre condition qui est dans la colonne H (name) car en fait, je veux identifier le nombre de commandes (en ne comptant pas les doublons) ayant utilisées la livraison express par exemple. puis la même demande avec la notion de Pays (FR ou EU donc excluant FR). et j'ai constaté que pour une commande ma base avec x lignes dont une seule devait être comptée (celle excluant les informations figurants en colonne F de l'onglet menu déroulant).

je ne sais pas si je suis assez clair.

par contre, ce que tu me dis power add on je ne connais...ça consiste en quoi?

Bonjour,

Je suis toujours étonné de voir 1 onglet par mois, alors que le tout pourrait être dans un seul, les dates faisant office de séparation dans un soustotal ou un TCD

Tu te compliques les choses

P.

oui je comprends mais je partais au départ du principe de faire apparaitre les données par mois grace à un indirect mais me rends compte que les lignes sont trop importantes. après je suis ouvert à toute proposition.

Bonjour

Faisable sur PowerQuery (add on pour 2010, intégré dans 2016) et TCD mais à vérifier sur le volume.

Quelques remarques :

Tu veux te baser sur l'unicité des factures mais on retrouve certains numéros sur les 2 mois...

La notion d'Express, Standard ou Relais ne figure pas dans les données il me semble...

pour répondre à l'unicité c'est du au fait qu'une commande passée par un client en fin de mois aura sa commande qui apparaitra bien sur la data dudit mois mais les charges additionnelles (telles que regulpoids etc...) ne seront reportées que sur la data du mois suivant. pour autant en tenant compte des éléments dont je t'ai parlé tu ne l'identifie qu'une fois. tu vois le truc?

Re

en fait je me suis trompé sur ma version Excel je suis sur 2013.

PowerQuery est aussi en add on sur 2013 https://support.office.com/fr-fr/article/pr%C3%A9sentation-de-microsoft-power-query-pour-excel-6e92e2f4-2079-4e1f-bad5-89f6269cd605

Il peut palier en partie ton découpage en 12 onglets mais, comme patrick1957, je pense qu'il serait mieux de tout avoir sur un seul.

pour ma requête, la notion de Express, standard et Relais sont matérialisées par les données suivantes:

Chronopost Europe = Standard

Chronopost International= Express

Chronopost C13= Express

Chronopost retour Classic = Retour

Colissimo Domicile sans signature = Standard

Colissimo Retour France = Retour

Ups Standard = Standard

Ups Return = Retour

Chronopost C13 Relais = Relais

UPS Access Point DR Standard = Relais

Il est donc nécessaire d'ajouter une table de correspondance dans le classeur

Idem si EU doit rassembler les pays autres que FR

Pour l'unicité, si l'élimination des valeurs de H supprime la possibilité d'avoir une même facture compté sur 2 mois c'est OK mais dans ton exemple tu ne mentionnes pas H pour la 1ère synthèse...

en fait je me suis trompé sur ma version Excel je suis sur 2013.

Change alors dans ton profil

P.

Rechercher des sujets similaires à "vba compter lignes doublons conditions"