Страницы: 1
RSS
Power query Нумерация п/п в зависимости от значения
 
Добрый день!
Есть таблица, в одном столбце данные (например по строкам - а,а,б,б,д,д,д,с,с,с)
Возможно ли средствами PQ создать столбец с нумерацией для каждого значения?
(например по строкам - 1,2,1,2,1,2,3,1,2,3)
или это проще сделать макросом после PQ?
Можете накидать вариант?
Изменено: oktan73 - 20.04.2018 12:09:34
 
Цитата
oktan73 написал:
Можете накидать вариант?
Вобще то это вы согласно правилам должны приложить файл пример с вашими попытками что-то сделать, но у вас не получилось и вы просите помочь.
А так ваш вопрос уже не раз поднимался на данном форуме. Ищите: индекс внутри групп PowerQuery
 
Надеюсь Максим не обидится на меня
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Grouped Rows" = Table.Group(Source, {"Авто", "Код номенклатуры"}, {{"tab", each Table.AddIndexColumn(_, "Index", 1,1), type table}}),
    #"Expanded {0}" = Table.ExpandTableColumn(#"Grouped Rows", "tab", {"Index"}, {"Index"})
in
    #"Expanded {0}"
 
StepanWolkoff, спасибо!
Но пока мне сложно понять код ((
Возможно ли это сделать действиями в интерфейсе PQ (понажимать на кнопочки :))? Или только правкой кода?

на всякий случай мой код (но там индекс общий, а надо группировать по столбцу "Поставщик", а индексировать по дате)

Код
let
    Источник = Excel.Workbook(File.Contents("Z:\-= 1 КВАРТАЛ 2018 =-\обработка_1кв18.xlsx"), null, true),
    Накл_Sheet = Источник{[Item="Накл",Kind="Sheet"]}[Data],
    #"Повышенные заголовки" = Table.PromoteHeaders(Накл_Sheet),
    #"Измененный тип" = Table.TransformColumnTypes(#"Повышенные заголовки",{{"Поставщик", type text}, {"Покупатель", type text}, {"N", Int64.Type}, {"Дата накл", type date}, {"Сумма по полю Сумма", type number}, {"Среднее по полю НДС", type number}, {"Сумма по полю Сумма НДС", type number}}),
    #"Сортированные строки" = Table.Sort(#"Измененный тип",{{"Поставщик", Order.Ascending}, {"Дата накл", Order.Ascending}}),
    #"Строки с применным фильтром" = Table.SelectRows(#"Сортированные строки", each ([Поставщик] <> "Общий итог")),
    #"Добавлен индекс" = Table.AddIndexColumn(#"Строки с применным фильтром", "Индекс", 1, 1),
    #"Переупорядоченные столбцы" = Table.ReorderColumns(#"Добавлен индекс",{"Индекс", "Поставщик", "Покупатель", "N", "Дата накл", "Сумма по полю Сумма", "Среднее по полю НДС", "Сумма по полю Сумма НДС"}),
    #"Переименованные столбцы" = Table.RenameColumns(#"Переупорядоченные столбцы",{{"Сумма по полю Сумма", "Сумма"}, {"Среднее по полю НДС", "НДС"}, {"Сумма по полю Сумма НДС", "Сумма НДС"}})
in
    #"Переименованные столбцы"
Изменено: oktan73 - 20.04.2018 12:41:03
 
Круто, спасибо!
 
Цитата
oktan73 написал:
Возможно ли это сделать действиями в интерфейсе PQ
вот кнопочный код:
Код
// Таблица1
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
// Группировка, в группировке выбираем "Все строки":
    #"Grouped Rows" = Table.Group(Source, {"Столбец1"}, {{"tmp", each _, type table}}), 
// а вот тут код доп. столбца надо будет ввести руками^:
    #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Пользовательская", each Table.AddIndexColumn([tmp], "Index",1,1)), 
    #"Removed Other Columns" = Table.SelectColumns(#"Added Custom",{"Пользовательская"}),
    #"Expanded {0}" = Table.ExpandTableColumn(#"Removed Other Columns", "Пользовательская", {"Столбец1", "Index"}, {"Столбец1", "Index"})
in
    #"Expanded {0}"
F1 творит чудеса
Страницы: 1
Наверх