Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2019, 13:05   #1
iNataliya
Пользователь
 
Регистрация: 29.08.2013
Сообщений: 27
По умолчанию power query динамический выбор столбцов

Добрый день,

изучаю возможности power query, подскажите как можно сделать динамический выбор столбцов в запросе.

В примере на первом листе список столбцов из базы данных, с пометкой выгружать ("да"/"нет"). Делаю запрос "Настройки" и отбираю только "да"

Теперь делаю запрос к БД с выгрузкой только тех столбцов которые нужны.
Код:
let
    Источник = Excel.CurrentWorkbook(){[Name="БД"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"СТ1", Int64.Type}, {"СТ2", type text}, {"СТ3", Int64.Type}, {"СТ4", Int64.Type}, {"СТ5", Int64.Type}, {"СТ6", Int64.Type}, {"СТ7", type text}, {"СТ8", Int64.Type}, {"СТ9", type any}, {"СТ10", type text}, {"СТ11", type any}, {"СТ12", type any}}),
    #"Другие удаленные столбцы" = Table.SelectColumns(#"Измененный тип",{"СТ1", "СТ10"})
in
    #"Другие удаленные столбцы"
И вот тут никак не пойму как сделать.
моя попытка подставить вместо списка столбцов запрос "Настройки"

Код:
let
    Источник = Excel.CurrentWorkbook(){[Name="БД"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"СТ1", Int64.Type}, {"СТ2", type text}, {"СТ3", Int64.Type}, {"СТ4", Int64.Type}, {"СТ5", Int64.Type}, {"СТ6", Int64.Type}, {"СТ7", type text}, {"СТ8", Int64.Type}, {"СТ9", type any}, {"СТ10", type text}, {"СТ11", type any}, {"СТ12", type any}}),
    #"Другие удаленные столбцы" = Table.SelectColumns(#"Измененный тип",{Настройки})
in
    #"Другие удаленные столбцы"
разбивается об ошибку "Не удается преобразовать значение типа Table в тип Text".
Подскажите как сделать?
Вложения
Тип файла: xlsx пример.xlsx (20.7 Кб, 18 просмотров)
iNataliya вне форума Ответить с цитированием
Старый 19.04.2019, 13:45   #2
iNataliya
Пользователь
 
Регистрация: 29.08.2013
Сообщений: 27
По умолчанию

О, Все получилось вот так :
Код:
let
    Источник = Excel.CurrentWorkbook(){[Name="БД"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"СТ1", Int64.Type}, {"СТ2", type text}, {"СТ3", Int64.Type}, {"СТ4", Int64.Type}, {"СТ5", Int64.Type}, {"СТ6", Int64.Type}, {"СТ7", type text}, {"СТ8", Int64.Type}, {"СТ9", type any}, {"СТ10", type text}, {"СТ11", type any}, {"СТ12", type any}}),
    #"Другие удаленные столбцы" = Table.SelectColumns(#"Измененный тип",Table.ToList(Настройки))
in
    #"Другие удаленные столбцы"
iNataliya вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Power Query. Как удалить выпадающие списки?, Таблица была закачена из интернета stasbz Microsoft Office Excel 0 06.01.2019 23:37
добавление столбцов в динамический массив robokop Общие вопросы C/C++ 8 04.05.2011 01:44
выбор столбцов в access kuzmich БД в Delphi 1 13.01.2011 20:52
Выбор из столбцов ИннаМакарова Помощь студентам 6 04.10.2010 07:21
двумерный динамический массив с запросом к пользователю о кол-ве строк и столбцов? vasyapupkin Общие вопросы C/C++ 2 22.11.2009 17:37