Страницы: 1
RSS
Сложный рейтинг на основании нескольких критериев (без использования vba)
 
Добрый день, уважаемые форумчане.
Столкнулся с проблемой, искал, читал ветки на форумах, но подступаясь каждый раз заново понимаю, что задачу решить до конца не могу (или, все-таки могу, но криво и не красиво =)

дано: есть магазины/точки (в примере 10 штук), по каждому магазину за месяц выводятся 4 параметра: 1 - средняя оценка (от 1 до 5), 2 - процент брака (от 0% до 100%), 3 - доля терминалов (% от 0% до 100%), 4 - некое время обслуживания (время в виде чч:мм:cc). Магазины объединены в 3 группы.

задача:
->> посчитать рейтинг для магазинов (например, от 1 до 10) по нарастающей, на основании 4 критериев, учитывая то, что для первого и третьего критерия - чем значение больше, тем лучше, для второго - чем меньше, тем лучше, для четвертого - чем меньше время, тем лучше.
->> посчитать рейтинг для групп магазинов (на основании средних значений по группе по всем 4 параметрам)

Дополнительно: среди значений параметров могут встречаться нули/пустоты, рейтинг не должен пропускать, например, позицию 3, если позицию 2 заняли несколько магазинов. Также надо посчитать без использования макросов и, желательно, сводных таблиц. Помимо этого, было бы замечательно, чтобы расчеты не завешивали долго систему, т.к. набор магазинов и критериев финально довольно большой.

Вот такая навороченная задачка =)
Пример во вложении.

Рейтинг отдельно для каждого параметра я считал через СЧЁТ(1/ЧАСТОТА(($H$2:$H$1500>H2)*$H$2:$H$1500;$H$2:$H$1500)), Но ума не приложу как их совместить воедино + как посчитать для времени, которое чем меньше-тем лучше и эта формула на большом диапазоне приводит к долгим расчетам и подвисаниям.
Вторая загвоздка - посчитать рейтинг для групп. если считать по-простому "в лоб" - то можно сделать сводную, выдернув уникальные значения и по ним считать далее, но хочется без сводной, а вывести формулой массив уникальных групп не выходит.

Буду очень признателен за помощь!
Изменено: Иван - 26.12.2013 16:59:46
 
В общем, предложил способ подсчёта итогового рейтинга.
Но вот по градации не понятно.
Как вы будете говорить, какие магазины будут считаться как 1 (лучший) и 10 (худший).
Если дадите направление, может и назреет решение.
А так, пока только это.
 
SanShiney
Как вы интересно считаете, я даже и думал делением заниматься  ;)  
принцип прост - в топе - те, у кого максимальный балл по оценке и использовании терминалов и наименьший % брака и время обслжуивания.
кстати я разобрался с массиом и как это потом свести на уровень групп, так что в этой части помощи не нужно))
если кому понадобится - http://www.excel-vba.ru/chto-umeet-excel/kak-poluchit-spisok-unikalnyxne-povtoryayushhixsya-znachenij/
 
%-ная доля каждого из критериев в общем критерии - одинаковая?
Изменено: Dima S - 26.12.2013 17:08:33
 
если да - то вариант попроще.
А от чего такая нелюбовь к сводным?

Цитата
если кому понадобится - http://www.excel-vba.ru/chto-umeet-excel/kak-poluchit-spisok-unikalnyxne-povtoryayushhixsya-znachenij/
вы считаете это проще и удобнее чем сводная?  
Изменено: Dima S - 26.12.2013 17:19:01
 
% доля или же вес каждого критерия одинаковый.
К сводным вообще любовь, но в данном случае сводные увеличат вес файла + их каждый раз надо будет ручками обновлять, а мне бы этого не хотелось. Но я с этим уже разобрался, по ссылке был  пример того, как формулами массив сформировать, что я и сделал.

Я не понял в вашем варианте как вы в рез-те посчитали рейтинг (сортировка и цифры по порядку? если да, то, к сожалению, так не подойдет), формул нет)
 
Формулы тоже нехило увеличивают вес файла.
Ручками обновлять не обязательно - можно макросом, можно форматировать массив как таблицу и просто Alt+F5 на сводной.
Зато сводные намного быстрее и проще считают то что нужно.
 
Dima S
Спасибо за вариант!
Я так понимаю, что итоговая оценка строится по принципу Чем меньше произведение показателей (Оценка магазина(баллы)), тем лучше?
Изменено: Иван - 30.12.2013 00:41:07
 
гы) наоборот в принципе) у меня ошибка)
 
Иван
Просто, в примере, который я выслал, получается, что 8 магазинов получат 10ку, один получит 1, и один получит 7.
Если это вас устраивает, то могу скинуть такой вариант расчёта.

SanShiney, цитата лично для Вас:
Цитата
Правила. Не рекомендуется: п.4.4. Создавать сообщения, содержащие "аффтарскую" речь, специально сделанные ошибки; злостно несоблюдать правила русского языка.
Издевательство над языком удалено [МОДЕРАТОР]
Изменено: SanShiney - 30.12.2013 01:20:50
Страницы: 1
Читают тему
Наверх