Я использую запрос, как показано ниже в силовом запросе Excel 2016:

let
   Source = Odbc.Query("dsn=AS400", "select * from libm61.emleqpm1 where STN1 = '03'  ")
in
    Source

Я хочу заменить '03' на ячейку формы значения AD2

Возможно ли это сделать ?

2 ответа2

0

Ответ Раджеша С уже может удовлетворить ваши требования. Однако слабым местом его ответа является то, что ваш параметр зависит от его расположения на столе. Я предлагаю лучшее решение:

  1. Как и предложил Раджеш, создайте таблицу с правильными заголовками: Создание таблицы из диапазона
  2. Убедитесь, что курсор находится внутри таблицы, на вкладке "Данные" нажмите «Из таблицы / диапазона» Использование таблицы в качестве источника данных для Power Query
  3. Прямо сейчас вы будете в редакторе мощных запросов. Сначала убедитесь, что столбец "Значения" относится к типу данных "Текст". Затем щелкните столбец "Имя параметра" и на вкладке "Преобразование" нажмите "Столбец сводки". Используйте столбец "Значение" в качестве значений. Убедитесь, что вы развернули вкладку "Дополнительные параметры" и выбрали "Не объединять" как "Функция совокупного значения". Поворот параметров
  4. Теперь у вас будут разные столбцы с именем параметра в качестве имени столбца. Щелкните правой кнопкой мыши запрос "Параметры" и выберите "Справочник" Создание ссылки из существующего запроса
  5. Щелкните правой кнопкой мыши значение вашего параметра и нажмите "Развернуть" Развертывание до определенного значения
  6. Теперь у вас будет запрос, который можно использовать в качестве переменной на вашем листе. используйте его в своем ODBC Query:

let Source = Odbc.Query("dsn=AS400", "select * from libm61.emleqpm1 where STN1 = '"&STN1"' ") in Source

Я знаю, что мои шаги выглядят утомительно, но я очень забывчив, поэтому мне нужно использовать описательные имена переменных, чтобы легко запомнить, что делает мой Power Query. Вы также можете выполнить шаг "Изменить тип" после поворота параметров, если хотите использовать значения ячеек для расчетов с другими запросами. Вот моя ссылка

0

Нет, напрямую вы не можете использовать ссылку на ячейку. Что вам нужно сделать, это создать отдельный диапазон данных и преобразовать его в таблицу.

Теперь преобразуйте этот диапазон в таблицу и назначьте правильное имя, например, ParaTAB или ParameterTAB, тогда ваша команда должна быть такой,

let
   Source = Odbc.Query("dsn=AS400", "select * from libm61.emleqpm1 where STN1 =  ParaTAB[Value]{2}  ")
in
    Source

Здесь Power Query выберет третье значение или третью строку, которая является ADM, так как она считается от 0.

NB: Помните, что B6 и A2 являются ссылками на ячейки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .