Forum Discussion
table names as a quoted string parameter in advanced editor
Hi all,
using the Advanced Editor, consider this piece of code below. It's orginial without using a "parameter" to substitute the values Q8, agree, "agree":
#"Merged Queries" = Table.NestedJoin(#"Filteres Rows", Q8, agree, {"answer"}, "agree", JoinKind.FullOuter)
I am going to be creating a number of tables for many survey question and likert tables, and would like to parametrise the above code. Something like:
question_par = "Q8", // where this is the question number
likert = agree, // where this is a table
#"Merged Queries" = Table.NestedJoin(#"Filteres Rows", question_par , likert , {"answer"}, "agree", JoinKind.FullOuter)
but as you can see, the issue is the quoted agree ("agree"). A very easy fix would be to create another parameter called something like likert_quoted = "agree", replace it and be done with it, but I am wondering if there is a way to create a function that extracts the name of the table agree (assigned in the likert variable) and returns the quoted string "agree".
Your help appreciated. Thanks,
Alex Braga
2 Replies
- ronrsnfldSuper User
You can make use of #sections.
Assume you have a parameter named likerts which contains the text string of the table of interest.
The following function, which you can name whatever you want, will return the relevant table.
()=> let #"Queries" = Record.SelectFields(#sections,"Section1")[Section1], #"likert name" = #"Queries"[likert], #"likert table" = Record.FieldValues(Record.SelectFields(#"Queries",#"likert name")){0} in #"likert table"This function will return an error if the table does not exist.
- ronrosenfeldFrequent Visitor
If I misunderstood and you need to extract the table name from the table, you can still use the sections parameter.