1

У меня есть исходные данные, показывающие утверждения расписаний в следующем формате (примерно для 850 сотрудников и 200 менеджеров):

  Employee Name  Manager Name  TS Approved? 
  Employee 1     Manager 1     No
  Employee 2     Manager 2     Yes
  Employee 3     Manager 3     Yes
  Employee 4     Manager 1     No
  Employee 5     Manager 3     No

Я сделал сводную таблицу следующим образом (% unapproved - это просто формула, которую я имею рядом с сводной таблицей):

                 Count TS Approved? 
  Manager Name   No    Yes   Total  % Unapproved
  Manager 1      11          11     100%
  Manager 2      6     10    16     38%
  Manager 3      7     18    25     28%
  Manager 4      5     8     13     38%
  Manager 5      5     4     9      56%
  Manager 6            3     3      0%
  Manager 7      5           5      100%

Мне нужно отсортировать, чтобы получить 5 лучших худших утверждающих по количеству - но только 5. Мои проблемы:

  • Если я использую сводную таблицу «Топ 10» в столбце «Нет», она покажет 6 значений, поскольку не различает три 5
  • Я попытался добавить процент, чтобы я мог отсортировать наибольшие наименьшие по%, затем наибольшие наименьшие по количеству, а затем просто взять топ-5 вручную - поскольку 5/5 (100%) неутвержденных хуже 5/8 (38%) - но не знаю, как сортировать по%.
  • Если я добавлю ее в виде формулы вне сводной таблицы (как выше), Excel не позволит мне отсортировать сводную таблицу на основе этих данных. 'Вы не можете переместить часть отчета сводной таблицы ....'
  • Если я добавлю в таблицу данные, отображаемые как «% от общего количества родительских строк», они все равно будут отсортированы только по количеству

Кто-нибудь может подумать, как я могу заставить его делать то, что я хочу, т.е.

                 Count TS Approved? 
  Manager Name   No    Yes   Total  % Unapproved
  Manager 1      11          11     100%
  Manager 3      7     18    25     28%
  Manager 2      6     10    16     38%
  Manager 7      5           5      100%
  Manager 5      5     4     9      56%
  Manager 4      5     8     13     38%
  Manager 6            3     3      0%

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

Спасибо!

Луиза

2 ответа2

0

Интересный вызов. Некоторые из проблем включают в себя:

  • В полевых расчетах не хватает гибкости, чтобы получить то, что вам нужно
  • Хотя вы можете отображать числа как% от общего числа, и, похоже, вы можете сортировать по ним - это действительно сортирует по основным числам.

У меня есть решение, которое использует таблицы и сводные таблицы. Возможно, существует более простое решение. Шаги (сделано в Excel 2016):

  1. Выберите внутри ваших необработанных данных. Выберите "Вставить" ленту и нажмите "Таблица"
  2. В новой таблице вставьте расчет для% NotApproved
  3. Выберите "Инструменты таблицы", "Дизайн" и нажмите "Суммировать с помощью сводной таблицы".
  4. Создайте простую сводную таблицу с именем диспетчера в качестве строк и% NotApproved в качестве значений.
  5. Сортировать имена менеджера в порядке убывания по% NotApproved

Вот пример. Ниже приведен фрагмент из 30 строк "необработанных данных", аналогичных описанным в вашем вопросе ...

Выберите "Вставить" ленту и нажмите "Таблица" ...

Вы получаете лучше отформатированные данные. Выберите D1, следующий за последним заголовком столбца и введите «% No» - это создаст новый столбец в таблице с новым заголовком. В ячейке D2 введите следующую формулу ...

=IF([@[TS Approved?]]="No",1,0)/COUNTIF([Manager Name],"="&[@[Manager Name]])*100

Когда вы нажимаете Enter, он автоматически заполняется в таблице. Эта формула делает:

  1. IF([@[TS Approved?]]="No",1,0) Если утверждено расписание "Нет", получите значение 1.
  2. COUNTIF([Manager Name],"="&[@[Manager Name]]) Определяет, сколько раз менеджер в этой строке появляется в таблице.
  3. Результат от 1, деленный на результат от 2 раз 100

Теперь таблица выглядит так ...

Выберите "Инструменты таблицы" "Лента" "Дизайн" и нажмите "Суммировать с помощью сводной таблицы". Постройте сводную таблицу, чтобы она выглядела следующим образом ...

... и сортировать это ...

... чтобы получить это ...

Несмотря на то, что настройка требует большого количества шагов, поддерживать таблицу довольно просто, и это автоматически поддерживает ведение сводной таблицы.

0

Не знаю почему, но сегодня утром я понял две вещи за завтраком ...

  1. Использование таблицы - это хорошо, но, возможно, только добавляет усложнение к проблеме.
  2. Хотя вы вычисляете свой% Unapproved как% от расписаний, за которые отвечает менеджер, вы можете рассчитать его как% от всех неутвержденных расписаний.

Так что я думал, что выложу альтернативный ответ.

Рядом с вашими необработанными данными поместите заголовок %No и этот расчет ниже (и заполните).

=IF(C2="No",1,0)/COUNTIF($C$2:$C$31,"="&C2)*100

Формула вычисляет, если этот график не утвержден, процентное содержание всех неутвержденных расписаний.

Ваши необработанные данные теперь выглядят так ...

Постройте свою сводную таблицу и сортируйте по% No.

Если вы все еще хотите, чтобы% Unapproved было% от расписаний, за которые отвечает менеджер, используйте это уравнение в столбце D.

=IF(C2="No",1,0)/COUNTIF($B$2:$B$31,"="&B2)*100

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .