Forum Discussion

Dicken's avatar
Dicken
Post Prodigy
2 years ago
Solved

M code Custom functions dealing with lists

  
hi, I have had this problem a few times and don't really understand it, 

If I  define an custom list; ; 

  let alist = {"a acc a", "abc def", "abc dd dda", "abc a bc" } in alist

 

  and then a custom funciton ; 

( listA, valueA )=> 
    List.Contains( listA, valueA, ( x ,y )=> 
   Text.Contains( x, y ) )

 

i can invoke that on the list   so ;    Source = function;  Source (Alist, "a") - = true , 


but if I want to use the custom function dialog box that is generated I cannot refer to the list,  it is not recognesed, 
I have to convert to a table , then  define the  list parameter as a list , I can then select the table / table column to use as a list? 
this seems a very odd so 

let alist = {"a acc a", "abc def", "abc dd dda", "abc a bc" } in 
Table.FromList( alist, Splitter.SplitByNothing(), {"A"} )

(  listA as list , valueA as text  )=> 
    List.Contains( listA, valueA, ( x ,y )=> 
   Text.Contains( x, y ) )

 

Can anyone explain why I cant' just refer to the list  directly  ?  or suggest other ways around this problem? 

Richars

  • Just an ommision in the UI. If it is important to you, have a search. I recall something similar passing here, but can't find it myself... It can be worked around, but some effort is involved...

2 Replies

  • Just an ommision in the UI. If it is important to you, have a search. I recall something similar passing here, but can't find it myself... It can be worked around, but some effort is involved...

  • Dicken's avatar
    Dicken
    Post Prodigy

    Thanks I just wondered if  overlooking somthing obvoious, thanks for taking the time to resond.