SEARCH Power BI

Vous allez découvrir comment utiliser la fonction DAX SEARCH Power BI afin de chercher un caractère dans une chaine de caractères.

Pour extraire les données d’une chaîne de texte délimitée, il faut d’abord connaître la position du délimiteur. Dans ce scénario, il s’agit du caractère « ¤ » qui est dans la colonne ArticleSubstituer.

Aussi, dans cette seconde étape, il faut créer une nouvelle colonne, nommée ArticlePosFin, qui cherche le premier caractère « ¤ » dans la chaîne. Par ailleurs, sa position correspond à la position de fin du nom de l’article dans ArticleSubstituer.

Cette nouvelle colonne sera utilisée dans l’exercice suivant pour extraire définitivement le nom de l’article.

Enfin, en utilisant la même technique, adaptée à chaque situation, les colonnes MatierePosFin, TaillePosFin et PoidsPosFin seront créées. Il n’est pas nécessaire de créer une colonne de même type pour le marché car cette information est facile à trouver car c’est la dernière.

Pour vous aider, regarder la copie d’écran ci-dessous.

SEARCH Power BI : déterminer les données intermédiaires
SEARCH Power BI : déterminer les données intermédiaires

Par ailleurs, pour faire l’exercice, vous avez uniquement besoin du rapport PBI_Lab42.pbix qui est téléchargeable.

Gardez à l’esprit que l’interface a pu évoluer fortement depuis que cet article a été rédigé

Enregistrer son travail

Premièrement, télécharger et ouvrir le fichier PBI_Lab42.pbix et l’enregistrer sous le nom PBI_Lab43.pbix.

Création de la colonne ArticlePosFin avec la fonction SEARCH Power BI

Ensuite, dans la table Articles, créer une nouvelle colonne qui se nommera ArticlePosFin.

Notamment, le résultat attendu est de calculer la position de fin du nom de l’article dans ArticlePosFin.

La colonne ArticleSubstituer contient la chaîne de caractère à analyser. Par ailleurs, c’est le caractère « ¤ » qui délimite les données.

Ensuite, ne pas résumer la colonne.

Enfin utiliser la fonction SEARCH.

Pour vous aider, regarder la copie d’écran ci-dessous.

SEARCH Power BI : Colonne ArticlePosFin
SEARCH Power BI : Colonne ArticlePosFin

Solution

Dans la vue Données, faire un clic-droit sur la table Articles puis cliquer sur Nouvelle colonne.

Puis remplacer Colonne = par la formule suivante :

ArticlePosFin = SEARCH("¤",Articles[ArticleSubstituer],1,-1)

Ensuite, appuyer sur la touche entrée du clavier.

Dans le ruban Outils de colonne, cliquer sur la liste déroulante de ∑.Résumé puis cliquer sur Ne pas résumer.

Pour vous aider, regarder la copie d’écran ci-dessous.

Format Ne pas résumer
Format Ne pas résumer
Explication de la formule
Supposons que ArticleSubstituer soit ‘Lamelles¤Zinc¤12cm¤6g¤Premium’.
La fonction SEARCH recherche le caractère « ¤ » dans la colonne ArticleSubstituer, à partir du caractère 1. Dans ce cas, ArticlePosFin vaut 9.
Si le caractère « ¤ » n’est pas trouvé, la fonction renvoie -1.
Explication de la solution

Fin de la solution.

Création de la colonne MatierePosFin avec la fonction SEARCH Power BI

Ensuite, dans la table Articles, créer une nouvelle colonne qui se nommera MatierePosFin.

Notamment, le résultat attendu est de calculer la position de fin du nom de la matière dans MatierePosFin.

Ensuite ne pas résumer la colonne.

Enfin, utiliser la fonction SEARCH et le résultat du calcul précédent.

Solution

Dans la vue Données, faire un clic-droit sur la table Articles puis cliquer sur Nouvelle colonne.

Puis remplacer Colonne = par la formule suivante :

MatierePosFin = SEARCH("¤", Articles[ArticleSubstituer], Articles[ArticlePosFin] + 1, -1)

Ensuite, appuyer sur la touche entrée du clavier.

Enfin, dans le ruban Outils de colonne, cliquer sur la liste déroulante de ∑.Résumé puis cliquer sur Ne pas résumer.

Explication de la formule
Supposons que ArticleSubstituer soit ‘Lamelles¤Zinc¤12cm¤6g¤Premium’.
La fonction SEARCH recherche le caractère « ¤ » dans la colonne ArticleSubstituer, à partir de la valeur de ArticlePosFin + 1.
Comme ArticlePosFin vaut 9 (cf. résultat précédent), la recherche est faite à partir du caractère 10. Dans ce cas, MatierePosFin vaut 14.
Si le caractère « ¤ » n’est pas trouvé, la fonction renvoie -1.
Explication de la solution

Fin de la solution.

Création de la colonne TaillePosFin avec la fonction SEARCH Power BI

Dans la table Articles, créer une nouvelle colonne qui se nommera TaillePosFin.

Le résultat attendu est de calculer la position de fin de la valeur de la taille dans TaillePosFin.

Ensuite ne pas résumer la colonne.

Enfin, utiliser la fonction SEARCH et le résultat du calcul précédent.

Solution

Dans la vue Données, faire un clic-droit sur la table Articles puis cliquer sur Nouvelle colonne.

Puis remplacer Colonne = par la formule suivante :

TaillePosFin = SEARCH("¤", Articles[ArticleSubstituer], Articles[MatierePosFin] + 1, -1)

Ensuite, appuyer sur la touche entrée du clavier.

Enfin, dans le ruban Outils de colonne, cliquer sur la liste déroulante de ∑.Résumé puis cliquer sur Ne pas résumer.

Explication de la formule
Supposons que ArticleSubstituer soit ‘Lamelles¤Zinc¤12cm¤6g¤Premium’.
La fonction SEARCH recherche le caractère « ¤ » dans la colonne ArticleSubstituer, à partir de la valeur de MatierePosFin + 1.
Comme MatierePosFin vaut 14 (cf. résultat précédent), la recherche est faite à partir du caractère 15.
Dans ce cas, TaillePosFin vaut 19. Si le caractère « ¤ » n’est pas trouvé, la fonction renvoie -1.
Explication de la solution

Fin de la solution.

Création de la colonne PoidsPosFin avec la fonction SEARCH Power BI

Dans la table Articles, créer une nouvelle colonne qui se nommera PoidsPosFin.

Le résultat attendu est de calculer la position de fin de la valeur du poids dans PoidsPosFin.

Ensuite ne pas résumer la colonne.

Enfin, utiliser la fonction SEARCH et le résultat du calcul précédent.

Solution

Dans la vue Données, faire un clic-droit sur la table Articles puis cliquer sur Nouvelle colonne.

Puis remplacer Colonne = par la formule suivante :

PoidsPosFin = SEARCH("¤", Articles[ArticleSubstituer], Articles[TaillePosFin] + 1, -1)

Ensuite, appuyer sur la touche entrée du clavier.

Enfin, dans le ruban Outils de colonne, cliquer sur la liste déroulante de ∑.Résumé puis cliquer sur Ne pas résumer.

Explication de la formule
Supposons que ArticleSubstituer soit ‘Lamelles¤Zinc¤12cm¤6g¤Premium’.
La fonction SEARCH recherche le caractère « ¤ » dans la colonne ArticleSubstituer, à partir de la valeur de TaillePosFin + 1.
Comme TaillePosFin vaut 19 (cf. résultat précédent), la recherche est faite à partir du caractère 20. Dans ce cas, PoidsPosFin vaut 22.
Si le caractère « ¤ » n’est pas trouvé, la fonction renvoie -1.
Explication de la solution

Fin de la solution.

Enregistrer le fichier de travail Power BI Desktop.

La manipulation est terminée.


Publié

dans

par

Étiquettes :

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *