Convertir les fonctions Excel Filtre et Grande.Valeur dans Power Qwery

Bonjour à tous,

J'aurais besoin de votre aide pour convertir une formule Excel dans Power Qwery

Ci-joint une version sommaire d'un tableau contenant plus que 75000 lignes dans la version originale

J'essaye de convertir une formule excel qui contient les fonctions SI, GRANDE.VALEUR et FILTRE

Merci d'avance pour vos idées

Bonsoir à tous !

Une proposition ?

Bonjour JFL,

Un gros merci pour ta proposition. Ca fonctionne sauf que je m'aperçois d'un petit problème même avec ma fonction Excel

En fait chaque contact est lié à un client et ce client peut avoir plusieurs ID mais ca reste le même client donc un client lié à un contact doit être considéré une seule fois bien sur s'il répond aux autres critères, cad, nb employés > 5 et son revenu total est dans le TOP 2 de tous les clients liés à ce même contact

Par exemple, Sébastien est lié à un seul client UNIVERS (qui a 3 ID) donc automatiquement on ne considère que le ID avec le plus de revenu ayant le nbre d'employé > 5 comme suit :

image

Peut-être qu'il faut dès le début regrouper par Contact et NomClient mais voici les points qu'il faut considérer:

1. On regroupe par Contact

2. On ne prend que les clients ayant plus de 5 employés

3. Dans les clients qui restent, on prend un seul ID de chaque groupe de clients ayant le plus gros revenu dans le groupe

4. Dans la liste des ID qui restent, on prends les TOP2 revenus

Merci encore JFL si tu as une idée

Bonsoir à tous de nouveau !

Compte tenu de l'ajout de cette contrainte, ma compréhension de votre besoin est la suivante :

- La sélection s'effectue par contact.
- Pour les clients ayant + de 5 employés
- De l'ID ayant le revenu le plus élevé pour constituer le TOP1 unique de chaque contact.
- Exclusion de ce client (TOP1) de l'échantillon du contact.
- De l'ID ayant le revenu le plus élevé, sur l'échantillon restant, pour déterminer le TOP2

Validez-vous ?

Bonjour JF,

Je pense que tu as tout compris mais encore une fois voici ma validation:
Dans un premier temps, on enlève les clients ayant moins de 5 employés
Par la suite, la sélection se fait par Contact et on travaille pour chacun des Contacts de façon indépendante
Pour chaque Contact, on regarde chacun des groupes de clients liés à ce contact et on ne retient qu'un seul ID unique qui représente ce groupe de clients
Donc si un contact est lié à 3 clients (peu importe le nombre total de ID), on doit retenir 3 ID au final
Parmi tous les ID qui restent, donc 3 dans l'exemple ci-dessus, on ne garde que les 2 premiers selon les revenus (TOP2)

L'idéal est d'avoir un tableau final avec "Oui et Non" ou encore "Oui et vide" pour les clients à ne pas considérer

Un gros merci pour ton aide et pour ta patience

Bonsoir à tous de nouveau !

Visiblement la communication est difficile.

Vous validez ma compréhension (un TOP1 unique par contact) pour préciser ensuite qu'un contact peut avoir plusieurs TOP1.......

Oui c'est exact. Un TOP1 unique par contact et effectivement un contact peut avoir plusieurs TOP1

Merci d'avance

Bonjour à tous !

Une version amendée :

Bonjour à tous

Pour info il s'agit d'un cross post non signalé, à la même heure, sur au moins 3 forums, ce qui est contraire à la charte..

Bonjour à tous !

@78chris : Je me suis aperçu de cette indélicatesse notable après avoir posté ma dernière proposition...
Quelle plaie.......

Bonjour JF,

J'aimerais te remercier pour ta solution car ça fonctionne très bien

Aussi j'ai trouvé une autre façon de faire. Au lieu de fusionner les 2 requêtes j'ai ajouté une nouvelle colonne et j'ai utilisé la fonction List.PositionOf qui sert à faire une recherchev pour vérifier si un ID Client de la table principale est présent ou non dans la requête t_Critères et voici le code

Table.AddColumn(Source, "Option2", each if List.PositionOf(t_Critères[IDClient],[IDClient])>0 then "Oui" else "Non")

Merci encore

RE

Aussi j'ai trouvé une autre façon de faire. Au lieu de fusionner les 2 requêtes j'ai ajouté une nouvelle colonne et j'ai utilisé la fonction List.PositionOf qui sert à faire une recherchev pour vérifier si un ID Client de la table principale est présent ou non dans la requête t_Critères et voici le code

Grâce à Hasco sur xld...

Rechercher des sujets similaires à "convertir fonctions filtre grande valeur power qwery"