Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.
Hello,
I would like to create a Invoke Custum function and then add it in a list/table.
I was thinking of a code that would look like the image attached but I don't know how to solve it and also it could work?
Thanks in advance
Best regards
()=>
let
fct = Text.Select, // Function name in Cell C3 in Excel
text = txt, //Text = Hello the Word 2023 in Cell C4 in Excel
ListArgument = arg, // ListArgument = Table Range C7:C28 in Excel
res = fct(text, ListArgument)
in
res
Argument
{"0".."9"}
{0..9}
{"0".."10"}
{"0..10"}
"4"
{"0", "1", "2"}
{0, 1, 2, 3}
{"2, 3"}
"20"
"A"
"a"
{"H","T"}
{"H", "o", "3"
{"A".."z"}
{"A".."Z"}
{"a".."z"}
"H,o"
"H", "o"
"ab"
{"A".."Z", "0".."9"}
{"A".."Z", " ", "0".."9"}
Hello,
I tested another way with @slorin idea using Expression.Evaluate
This works for a single value.
I don't know how to create a function and then apply it to a list
Not sure if this is possible.
Thanks in advance
Best regards
let
TextParam = text, //Excel.CurrentWorkbook(){[Name="Texte"]}[Content]{0}[Texte]
Fct = Text.Select,
ListParam = Expression.Evaluate(Argument), //Excel.CurrentWorkbook(){[Name="Argument"]}[Content]{0}[Argument],
Expression = Expression.Evaluate(Fct(TextParam, ListParam))
in
Expression
Idée intéressante.
Personnellement j'utilise constamment le site officiel avec toutes les fonctions et ça me va.
Le nombre d'arguments de chacune est variable ainsi que la typologie (liste, table, texte, date, nombre...) et je ne vois pas trop comment faire pour que l'utilisateur indique en C3 la fonction et que le reste suive.
Je n'ai pas Excel sous la main pour tester votre code mais ça m'étonne que ça fonctionne sans Expression.Evaluate pour convertir le contenu de C3 en fonction et/ou Function.Invoke pour appeler cette fonction dans la requête
Stéphane
Je m'aide également du site officiel mais je pensais regrouper plusieurs fonctions de même type dans une matrice (voir capture).
J'aurais plusieurs matrices selon des groupes de fonctions homogènes...
L'autre idée était effectivement d'avoir les fonctions dans une liste déroulante.
Le code fx() que j'ai indiqué, était pour illustrer la demande.
Effectivement, Expression.Evaluate est une piste....
Merci
Cordialement
Bonjour
D'après votre copie d'écran vous travaillez en français.
Text.select n'accepte en second argument que des caractères uniques. Donc "0", "1" et non 0 ,1 qui sont des nombres et non du texte.
"10" , "20" ou "ab" ont 2 caractères. D'où l'erreur renvoyée.
Quel est l'objectif final ?
Stéphane
Bonjour Stéphane,
Je travaille effectivement en français 🙂,
Je souhaite faire une documentation de toutes les fonctions Power query,
Je voulais indiquer aussi les cas d'erreurs, ceux notamment que vous avez cités.
Sur l'image de mon post #1, j'ai mis manuellement les résultats et voudrais obtenir la même chose avec PQ
Mais pas certain qu'il soit possible
Cordialement
Hello @ThxAlot ,
Thank you for your reply, unfortunately I can't get it to work.
It gives errors all over the column.
Does it work on your side?
If that's the case, I'll do it properly again and apply your suggestions.
Maybe I'm not missing much...!!
Best regards
(argText as nullable text, argList as nullable list) =>
let
Fct = Text.Select, // Function name in Cell C3 in Excel
Text = argText, // Text = Hello the Word 2023 in Cell C4 in Excel
ListArgument = argList, // ListArgument = Table Range C7:C28 in Excel
Res = Fct(Text, ListArgument)
in
Res
Expertise = List.Accumulate( {Days as from Today}, {Skills and Knowledge}, (Current, Everyday) => Current & Day.LearnAndPractise(Everyday) ) |
Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!
Check out the October 2025 Power BI update to learn about new features.