Есть таблица, в которой ведется работа по вакансиям. Для каждой вакансии (уникальный id) записывается изменение ее статуса (Открыта, Приостановлена, Закрыта) во времени. Список и название статусов менять нельзя. Статусы могут повторяться. Вакансия может быть Приостановлена и Открыта несколько раз. При подсчете необходимо это учитывать.
Задача подсчитать количество вакансий в работе исторически на конец каждого месяца. Я начал решать эту задачу, но получил двойной счет. Если статусы повторяются, то я получаю неверное количество.
В решении использую PQ и сводные таблицы. Прошу подсказать, как обойти двойной счет.
Более подробно изложил в файле. Файл прилагаю. В файле вакансия одна, но реально их несколько сотен.
Заранее спасибо.
PS Уважаемые администраторы, прошу прощение за, возможно, не самое удачное название темы.
Добрый день!
Есть таблица, в которой ведется работа по вакансиям. Для каждой вакансии (уникальный id) записывается изменение ее статуса (Открыта, Приостановлена, Закрыта) во времени. Список и название статусов менять нельзя. Статусы могут повторяться. Вакансия может быть Приостановлена и Открыта несколько раз. При подсчете необходимо это учитывать.
Задача подсчитать количество вакансий в работе исторически на конец каждого месяца. Я начал решать эту задачу, но получил двойной счет. Если статусы повторяются, то я получаю неверное количество.
В решении использую PQ и сводные таблицы. Прошу подсказать, как обойти двойной счет.
Более подробно изложил в файле. Файл прилагаю. В файле вакансия одна, но реально их несколько сотен.
Заранее спасибо.
PS Уважаемые администраторы, прошу прощение за, возможно, не самое удачное название темы.book
Но если бы все было так просто... В реальной таблице много вакансий. Не стоит выбор между "0" и "-1". как в примере. Задача - так организовать логику обработки исходной таблицы, чтобы не было повторного счета. Один из вариантов (может, есть и другие) - надо сравнивать текущий статус и предыдущий и на основе результата сравнения считать количество "0" или "-1".
Можно ли решить такую задачу с помощью PQ? Выкладываю новый файл с уточнением вопроса.
bigor, спасибо за желание помочь.
Но если бы все было так просто... В реальной таблице много вакансий. Не стоит выбор между "0" и "-1". как в примере. Задача - так организовать логику обработки исходной таблицы, чтобы не было повторного счета. Один из вариантов (может, есть и другие) - надо сравнивать текущий статус и предыдущий и на основе результата сравнения считать количество "0" или "-1".
Можно ли решить такую задачу с помощью PQ? Выкладываю новый файл с уточнением вопроса.book
тогда формулу лучше писать в выгруженной из PQ таблице в доп. столбце. Предвидя вопрос, обновление запроса формулу не поломает, если правильно написать
тогда формулу лучше писать в выгруженной из PQ таблице в доп. столбце. Предвидя вопрос, обновление запроса формулу не поломает, если правильно написатьPelena
Pelena, Вы правы: выгружаю запрос на лист, в файле Excel - два листа: с запросом и второй - со сводной. А можно будет научить формулу работать для каждого id отдельно? Должны ли быть отсортированы строки для правильной работы формулы? PS Для простоты в файле примера показал только одну вакансию.
Pelena, Вы правы: выгружаю запрос на лист, в файле Excel - два листа: с запросом и второй - со сводной. А можно будет научить формулу работать для каждого id отдельно? Должны ли быть отсортированы строки для правильной работы формулы? PS Для простоты в файле примера показал только одну вакансию.book
Pelena, верно ли я понимаю, что эта формула (фрагмент Вашей формулы) "пробегает всю таблицу сверху вниз и ищет самый последний статус? т.е. возращает значение из самой "нижней" ячейки в столбце С ? Учитывая только те строки, в которых id = b12 (в данном случае)
Код
=ПРОСМОТР(;-1/($B$7:B11=B12);$C$7:C11)
Pelena, верно ли я понимаю, что эта формула (фрагмент Вашей формулы) "пробегает всю таблицу сверху вниз и ищет самый последний статус? т.е. возращает значение из самой "нижней" ячейки в столбце С ? Учитывая только те строки, в которых id = b12 (в данном случае)
Pelena, еще раз спасибо. Мне потребуется некоторое время, чтобы внедрить Вашу идею, т.к. реально статусов больше, и условия обора сложнее, чем в примере. Я обязательно отпишусь здесь в теме о результатах или задам новые вопросы. :)
Pelena, еще раз спасибо. Мне потребуется некоторое время, чтобы внедрить Вашу идею, т.к. реально статусов больше, и условия обора сложнее, чем в примере. Я обязательно отпишусь здесь в теме о результатах или задам новые вопросы. :)book
Pelena, на основе Вашей идеи составил новую формулу, которая учитывает большее количество статусов и разные их вариации. Если будет возможность, посмотрите, пожалуйста, нет ли просчета в логике. Заранее спасибо.
Pelena, на основе Вашей идеи составил новую формулу, которая учитывает большее количество статусов и разные их вариации. Если будет возможность, посмотрите, пожалуйста, нет ли просчета в логике. Заранее спасибо.book
если id могут быть вперемешку, то вместо С6 надо использовать функцию ПРОСМОТР из предыдущих постов, чтобы найти последний статус, соответствующий id.Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816