Страницы: 1
RSS
Ранжирование заявок в группах по условиям
 
Уважаемые форумчане, доброго времени суток!
Помогите пожалуйста решить проблему, с которой столкнулся.
Есть таблица, в которой я хочу произвести Ранжирование заявок в группах по условию, а именно:
Произвести ранжирование внутри каждого лота (столбец A), в зависимости от чисел в столбце D, при условии, что в столбце С стоит статус Допуск. В случае совпадения ранга первый ранг присваивается тому, у кого больший регистрационный номер заявки (столбец B), но к сожалению не знаю, какую формулу применить.

Пример как есть и как должно быть во вложении.

Заранее спасибо!
Кто ясно мыслит, тот ясно излагает.
 
Вариант на Power Query
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Добавлен индекс" = Table.AddIndexColumn(Источник, "Индекс", 1, 1),
    #"Измененный тип" = Table.TransformColumnTypes(#"Добавлен индекс",{{"Лот", Int64.Type}, {"Регистрационный номер#(lf)заявки", Int64.Type}, {"Статус", type text}, {"Итоговый балл", type number}, {"Ранг", type any}}),
    #"Удаленные столбцы" = Table.RemoveColumns(#"Измененный тип",{"Ранг"}),
    #"Сгруппированные строки" = Table.Group(
        #"Удаленные столбцы", 
        {"Лот", "Статус"}, 
        {{"Таб", each 
            let
                sort = Table.Sort(_,{{"Лот", Order.Ascending}, {"Итоговый балл", Order.Descending}, {"Регистрационный номер#(lf)заявки", Order.Ascending}}),
                index = if List.Distinct(sort[Статус]){0} = "Допуск" then Table.AddIndexColumn(sort, "Ранг", 1, 1) else sort
            in
                index,
        type table}}),
    #"Развернутый элемент Таб" = Table.ExpandTableColumn(#"Сгруппированные строки", "Таб", {"Регистрационный номер#(lf)заявки", "Итоговый балл", "Индекс", "Ранг"}, {"Регистрационный номер#(lf)заявки", "Итоговый балл", "Индекс", "Ранг"}),
    #"Сортированные строки" = Table.Sort(#"Развернутый элемент Таб",{{"Индекс", Order.Ascending}}),
    #"Удаленные столбцы1" = Table.RemoveColumns(#"Сортированные строки",{"Индекс"}),
    #"Переупорядоченные столбцы" = Table.ReorderColumns(#"Удаленные столбцы1",{"Лот", "Регистрационный номер#(lf)заявки", "Статус", "Итоговый балл", "Ранг"})
in
    #"Переупорядоченные столбцы"
Вот горшок пустой, он предмет простой...
 
PooHkrd, правильно ли я понимаю, что формулами эту задачу не решить?
Просто то, что я привел в примере, это часть большой таблицы и хочется все сделать в рамках одной таблицы, при необходимости в т.ч. и с доп. столбцами.
Изменено: Maximich - 24.01.2019 09:24:44
Кто ясно мыслит, тот ясно излагает.
 
Уважаемые форумчане, мое описание не достаточно понятно, или всё же формулами моей задачи не решить?
Спасибо
Кто ясно мыслит, тот ясно излагает.
Страницы: 1
Наверх