Есть файл "Цифры.xlsm". В нем имеется столбик с крайне большим количеством разнообразных значений. Необходимо отфильтровать эти значения по нужным параметрам, а "нужными параметрами" необходимо считать значение таблицы "cards", что находится в файле, из которого все это дело запускается.
Наглядные файлы, скрины с пояснениями и код прикладываю ниже. Код запроса:
Код
let
Источник = Excel.Workbook(File.Contents(Excel.CurrentWorkbook(){[Name="params"]}[Content]{0}[path]&"1 База.xlsm"), null, true),
Отчет_Sheet = Источник{[Item="Отчет",Kind="Sheet"]}[Data],
#"Удаленные верхние строки1" = Table.Skip(Отчет_Sheet,2),
#"Строки с применным фильтром" = Table.SelectRows(#"Удаленные верхние строки1", each ([Column1] = (Excel.CurrentWorkbook(){[Name="cards"]}[Content]{0}[Карта])))
in
#"Строки с применным фильтром"
НУЖНО: 1) Берем все числовые значение из таблицы 'cards', столбика 'Карта', файл ВО 3.xlsm
2) И вставляем их ВСЕ в переменный фильтр запроса данных в ВО 3.xlsm ИЗ 1 База.xlsm, который в итоге оставляет только те строки, в первом столбце значение которых соответствует тому, что мы берем из таблицы 'cards', файл ВО 3.xlsm
Большое спасибо!
Какой бы размер не разрешали - МАЛО! Более 300 кБ! Файлы удалены. Читайте правила форума
Файлы посмотреть не могу сейчас. Базовое решение такое: Ничего никуда вставлять не надо. Делаете слияние (merge, или join иными словами) двух таблиц по следующему принципу:
Первая таблица - та, которая "Импорт данных по картам", вторая - "Импорт списка карт".
Метод слияния - Правое внешнее соединение (Right Outer Join) внутреннее соединение
= Table.SelectRows (Sales_Customers, каждый List.Contains (Query1, [CustomerCategoryID]))
List.Contains проверит, будет ли каждая строка в таблице иметь номер CustomerCategoryID, который существует в списке, и возвращает true, если это произойдет, и тогда ваша таблица будет содержать только строки, в которые возвращается True
Если вы хотите исключить значения, которые у вас есть в своем списке, вы можете изменить выражение на
= Table.SelectRows (Sales_Customers, каждый List.Contains (Query1, [CustomerCategoryID]) = false
Андрей VG написал: Доброе время суток volond75 , коллега, долго это. Лучше так
Согласен , но хочу сделать так Выпадающий список с накопительным результатом http://www.doconomist.net/2016/07/google.html Где то видел реализацию в Excel А потом применить мой способ получая список из 1 ячейки Понимаю что ограничение на 1500 символов но мне достаточно