Accueil – Le CFO masqué › Forums › Power Query › Colonne conditionnelle
- Ce sujet contient 4 réponses, 2 participants et a été mis à jour pour la dernière fois par
ivan27, le il y a 5 années.
-
AuteurMessages
-
18 mars 2020 à 16 h 00 min #62281
ivan27
ParticipantBonsoir à tous,
Je me permet de vous solliciter car je ne parviens pas à mettre en place une colonne conditionnelle dont les valeurs découlent d’un texte trouvé sur une ligne et des valeurs d’une autre colonne :
Si la colonne ”Libellé” contient le mot ”VENTE” alors la colonne conditionnelle = ”1” pour la ligne concernée et toutes les lignes portant le même numéro dans la colonne ”Référence”, Sinon colonne conditionnelle = ”0”.
Je vous joins un fichier Excel en exemple avec quelques lignes renseignées à la main pour vous montrer le résultat attendu sous Power Query. N’hésitez pas à m’interroger pour tout complément d’information.
Merci d’avance pour votre aide et bonne soirée à tous,
IvanAttachments:
You must be logged in to view attached files.19 mars 2020 à 3 h 40 min #62297Stéphane Lorin
ParticipantBonjour
Je vous propose 2 solutions– la première assez simple à mettre en oeuvre consiste à créer une table intermédiaire des références dont un des libellés contient le mot “VENTE” : par filtre “Text.Contains” puis suppression des doublons
Puis de fusionner cette table avec la Source et de développer la référence.
Si “null” c’est que la référence ne contient pas le mot “VENTE”– la seconde pas plus longue, sans table intermédiaire mais un peu plus complexe, consiste à regrouper les lignes par référence, puis à identifier celles dont une des lignes contient le mot recherché par la formule
List.Contains([Données][Libellé],”VENTE”, (x as text, y as text)=>Text.Contains(x, y)))
qui renvoie “TRUE” ou “FALSE”
puis de “développer” les colonnes groupées à la première étape.référence sur les “equationCriteria” dans les fonctions de listes qui multiplient les possibilités de comparaison sur
Cordialement
Stéphane
Attachments:
You must be logged in to view attached files.19 mars 2020 à 10 h 49 min #62317ivan27
ParticipantBonjour le forum, Stéphane,
Merci beaucoup pour vos propositions
Bien cordialement et bonne fin de journée
Ivan19 mars 2020 à 13 h 23 min #62322Stéphane Lorin
ParticipantMerci de votre retour.
Dans mon second cas, voici une formule un peu plus simple pour savoir si la référence possède une ligne contenant le mot “VENTE” :
List.Count(List.FindText([Données][Libellé],”VENTE”))>0
List.FindText créera une liste avec les libellés contenant ce mot et List.Count >0 identifiera les références pour lesquelles cette liste n’est pas vide.Stéphane
21 mars 2020 à 3 h 19 min #62344ivan27
ParticipantBonjour Stéphane, le forum,
Merci pour cette autre proposition.
Bon week-end
Ivan -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.