Como novato total do Power Query, estou tentando criar uma função do Power Query que adiciona uma coluna de índice à tabela. Mas estou lutando para passar uma referência de tabela para a AddIndexColumn
função
O que eu tentei:
let
Func = () => Table.AddIndexColumn(Table, "Index", 1, 1)
in
Func
Isso dá um Expression.Error (A tabela não é reconhecida ou algo assim - é mostrado no idioma do sistema que não é EN)
let
Func = (T as table) => Table.AddIndexColumn(T, "Index", 1, 1)
in
Func
Em seguida, use Invoke Custom Function
em "MyTable" e no popup está a lista suspensa com todas as outras tabelas, exceto "MyTable" que é a tabela onde quero adicionar o IndexColumn.
Existe alguma limitação, ou estou faltando alguma coisa?
Obrigado pela ajuda!
PS: Eu sei que esta função não tem um uso na vida real e existem maneiras diferentes (melhores) de adicionar uma coluna de índice. Considere isso como uma prova de conceito.
Ok, a função para adicionar uma coluna de índice não se destina a
Invoke Custom Function
. Porque cria uma nova coluna e invoca a função para cada célula nesta coluna -> poderia criar milhares de novas colunas.Mas uma função com tal funcionalidade poderia ser escrita e então usada em um código de consulta. Observe que o
Table
objeto apenas fornece funções relacionadas à tabela aqui, ele não está conectado à própria tabela de dados. A referência da tabela de dados deve ser fornecida porTable.function
parâmetro.Código de função
Como usar a função em uma consulta
NOTA: A referência a
Source
não está disponível na lista suspensa da GUI, ela deve ser escrita manualmente noAdvanced Editor
!