IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Power BI Discussion :

Fonction "Si contient" Power BI


Sujet :

Power BI

  1. #1
    Membre confirmé
    Homme Profil pro
    gestion
    Inscrit en
    Mai 2017
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : gestion

    Informations forums :
    Inscription : Mai 2017
    Messages : 163
    Par défaut Fonction "Si contient" Power BI
    Bonjour,

    J'utilise Power BI pour la première fois,

    Pouvez-vous me dire comment faire la fonction suivante dans une nouvelle mesure (colonne): "si la colonne contient telle ou telle valeur alors valeur renvoyée sinon si c'est telle valeur alors valeur renvoyée"

    Désolé de vous embêter avec ça, c'est sûrement basic pour vous.

    Merci pour votre aide.

  2. #2
    Membre Expert
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 249
    Par défaut
    Bonjour

    Si je comprends bien votre demande : IF ou SWITCH

    si "Champ" = "A" alors 1 sinon 2

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(Table[Champ]="A";1;2)
    si "Champ" = "A" alors 1, sinon si "Champ" = "B" alors 2 sinon 3

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SWITCH(Table[Champ];"A";1;"B";2;3)
    une remarque malgré tout, je suis toujours prêt à aider les débutants mais il faut quand même un minimum chercher sur Internet des sites, des forums, ... il existe de nombreuses ressources en français sur DAX (en encore bien plus en anglais)
    c'est un peu plus long, mais c'est beaucoup plus formateur.
    ne le prenez pas mal, mais il me semble simplement que la première chose à faire quand on débute (et on a TOUS débuté un jour) est de se documenter, de se former et non de poser une question sur un forum


    Stéphane

  3. #3
    Membre confirmé
    Homme Profil pro
    gestion
    Inscrit en
    Mai 2017
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : gestion

    Informations forums :
    Inscription : Mai 2017
    Messages : 163
    Par défaut
    Salut Raccourcix,

    tout d'abord, Merci pour ta réponse,

    Ensuite, pour le premier point, ce n'est pas un "si =" mais un "si contient" que je cherche.

    Et pour le deuxième point, j'ai effectué plusieurs recherches mais je n'ai rien trouvé,
    Sinon je n'aurai embêté personne.

    Si d'autres personnes ont des pistes, je prends.

    Bonne aprème à tous.

  4. #4
    Membre Expert
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 249
    Par défaut
    le message précédent " Filtre des lignes contenant une chaine de carctere" doit pouvoir répondre à la question

  5. #5
    Membre confirmé
    Homme Profil pro
    gestion
    Inscrit en
    Mai 2017
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : gestion

    Informations forums :
    Inscription : Mai 2017
    Messages : 163
    Par défaut
    la discussion: "Filtre des lignes contenant une chaine de carctere" ne correspond pas à ma requête,

    Ce qu'il me faut est un "si contient" >> alors j'affiche AAA dans une nouvelle colonne.

    Bon je vais continuer de chercher.

  6. #6
    Membre Expert
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 249
    Par défaut
    et pourtant, voici un exemple DAX sous Excel avec FIND/SEARCH pour "si contient"

    Nom : 2021_09_08 SEARCH en DAX.JPG
Affichages : 9368
Taille : 48,0 Ko


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(SEARCH("M";Tableau4[Jour];1;0)>0;"Un M/m dans le jour";"Pas de M/m")
    le FIND de la colonne calculée 1 considère que "Samedi" ne contient pas de "M" car FIND distingue la casse majuscule/minuscule à la différence de SEARCH qui considère "m" = "M"

    Stéphane

  7. #7
    Membre confirmé
    Homme Profil pro
    gestion
    Inscrit en
    Mai 2017
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : gestion

    Informations forums :
    Inscription : Mai 2017
    Messages : 163
    Par défaut
    ça semble être différent sur power BI.

    Chez moi ça ne fonctionne pas.

  8. #8
    Membre confirmé
    Homme Profil pro
    gestion
    Inscrit en
    Mai 2017
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : gestion

    Informations forums :
    Inscription : Mai 2017
    Messages : 163
    Par défaut
    Voilà ce que j'ai mit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    indicateur = IF(Contains('table_1','table_1'[NOM],"thu"),"ok", "non")
    Elle ne me retourne pas le résultat attendu, dans le cas présent j'ai que des "non" pourtant certaines lignes de la colonne "NOM" contiennent bien les lettres "thu" exemple "Arthur".

    Par contre si je mets le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    indicateur = IF(Contains('table_1','table_1'[NOM],"Arthur"),"ok", "non")
    Elle me retourne "ok" sur chaque ligne de la colonne indicateur.

    Si quelqu'un a une explication svp ?

  9. #9
    Membre confirmé
    Homme Profil pro
    gestion
    Inscrit en
    Mai 2017
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : gestion

    Informations forums :
    Inscription : Mai 2017
    Messages : 163
    Par défaut
    J'ai finalement trouvé ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    indicateur = IF(CONTAINSSTRING('table_1'[NOM],"thu"),"ok", "non")
    ça l'air de fonctionner, donc je partage.

  10. #10
    Membre Expert
    Homme Profil pro
    ingénieur
    Inscrit en
    Mars 2015
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : ingénieur
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 249
    Par défaut
    Tant mieux si ça fonctionne

    la fonction CONTAINSSTRING n'existe pas en DAX pour ma version d'Excel 365.

    Sinon, entre Excel et PowerBI la différence est le séparateur "," et non ";"
    je viens de faire le test sous PowerBI,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    indicateur = IF(SEARCH("thu",'table_1'[NOM],1,0)>0,"ok", "non")
    est équivalent à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    indicateur = IF(CONTAINSSTRING('table_1'[NOM],"thu"),"ok", "non")

    A noter que CONTAINSSTRING est insensible à la casse, il ne distinguera pas "thu" de "Thu" ou "THU" et renverra VRAI dans les 3 cas, utilisez CONTAINSSTRINGEXACT si nécessaire

    Stéphane

Discussions similaires

  1. Evaluation de la fonction quote
    Par Toitoine dans le forum Lisp
    Réponses: 2
    Dernier message: 05/05/2007, 19h13
  2. [Fonction] Quote et guillemet dans un textarea
    Par ddelec24 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/03/2007, 15h51
  3. Fonction Quoted printable qui ne fonctionne pas.
    Par leCcsympas dans le forum C
    Réponses: 3
    Dernier message: 13/01/2007, 18h54
  4. Inverse de la fonction QUOTE() ?
    Par __fabrice dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 13/07/2006, 10h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo