|
|||||||
Power Query. Трюки и советы. Таблица навигации по функциям М
Время создания: 07.10.2021 20:18
Текстовые метки: Power Query
Раздел: Разные закладки - MSO - Excel - Power Query
Запись: xintrea/mytetra_db_adgaver_new/master/base/1633627131trdb96y28h/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Описание В этом уроке вы узнаете как создать таблицу навигации по всем функциям языка Power Query. На картинке только кусочек таблицы. В полной версии вы увидите намного больше строк и столбцов. Таблица содержит следующую информацию:
Решение Чтобы получить перечень всех функций нам понадобится функция #shared. К каждой функции в столбце функций нужно применить функции Value.Type и Value.Metadata. Дальше останется только привести полученные данные к удобному виду. Примененные функции
Код Код для получения готовой таблицы навигации по функциям М будет таким: let source = #shared, to_table = Record.ToTable(source), filter_name = Table.SelectRows(to_table, each Text.Contains([Name], ".")), col_metadata = Table.AddColumn( filter_name, "Пользовательский", each Value.Metadata(Value.Type([Value])) ), cols_remove = Table.SelectColumns(col_metadata, {"Пользовательский"}), expand_col = Table.ExpandRecordColumn( cols_remove, "Пользовательский", { "Documentation.Name", "Documentation.Description", "Documentation.LongDescription", "Documentation.Category", "Documentation.Examples" }, { "Documentation.Name", "Documentation.Description", "Documentation.LongDescription", "Documentation.Category", "Documentation.Examples" } ), expand_doc_examples_1 = Table.ExpandListColumn(expand_col, "Documentation.Examples"), expand_doc_examples_2 = Table.ExpandRecordColumn( expand_doc_examples_1, "Documentation.Examples", {"Description", "Code", "Result"}, {"Description", "Code", "Result"} ), filter_doc_name = Table.SelectRows(expand_doc_examples_2, each ([Documentation.Name] <> null)), sort_doc_name = Table.Sort(filter_doc_name, {{"Documentation.Name", Order.Ascending}}), transform_col_doc_long_desc = Table.TransformColumns( sort_doc_name, { { "Documentation.LongDescription", each List.Accumulate( List.Positions(Тэги), _, (state, current) => Text.Replace(state, Тэги{current}, "") ), type text } } ) in transform_col_doc_long_desc
|
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|