Отслеживание "No Shows" в реестре - PullRequest
0 голосов
/ 05 июля 2019

В настоящее время я составляю расписание занятий, где секретарь добавляет имена в список, сколько мест для этой комнаты доступно, и показывает, прошли ли они тестирование или нет.Менеджеры хотели бы подсчитать, сколько раз врач может не показывать.Столбец A - это номер места (не играет никакой реальной роли), столбец B - это слот имени, который извлекает доступный для поиска список из основного списка с помощью трюка "= Cell (" contents ")", потому что их слишком много для прямойпадать.Столбец C находится на VLOOKUP, чтобы проверить их текущий статус теста, чтобы не дублировать книгу.И, наконец, столбец D - это флажок, если они не отображаются.

enter image description here

У меня есть отдельный лист, который отслеживает эти не показы, он записывает имя, счетчик 1 и дату, которую они пропустили.

enter image description here

Вопрос 1, есть ли способ не устанавливать каждый флажок отдельно и связывать каждого отдельно?Есть 8 недель занятий с более чем 60 местами.

Вопрос 2, есть ли способ заставить его добавлять строки на этот лист только в том случае, если установлен флажок, чтобы не было 900 пустых строк для сводной таблицы?

Код, используемый на листе NoShow:

=IF(Schedule!D5=TRUE,Schedule!B5,"")
=IF(A2<>"","1","")
=IF(Schedule!D5=TRUE,TODAY(),"")

Ответы [ 2 ]

0 голосов
/ 06 июля 2019

Вопрос 1, есть ли способ не устанавливать каждый флажок отдельно и связывать каждый из них отдельно? Есть 8 недель занятий с 60+ местами. Да! Смотрите предлагаемое системное решение ниже.

Вопрос 2, есть ли способ сделать так, чтобы он добавлял строки на этот лист, только если отмечен флажок, чтобы не было 900 пустых строк для сводной таблицы?

Да, отформатируйте диапазон, который вы используете как «Таблица», и таблица автоматически добавит строки. Используйте вместе с предлагаемым решением.

Предлагаемое решение: Вы должны быть в состоянии найти решение с помощью PowerPivot, используя (i) простую модель данных, состоящую из одной таблицы (таблицы фактов), которая отслеживает даты занятий и людей, которые пропустили этот класс, и основной список потенциальных участников (таблица поиска / измерения), где вы связываете таблицу отслеживания классов с таблицей потенциальных посетителей через имя и (ii) сводную таблицу, которая легко суммирует, кто пропустил. Из сводной таблицы вы можете создавать крутые графики или слайды по мере необходимости

Ваш секретарь просто должен обновить изменения в таблице фактов или таблице измерений. Если номер места не играет никакой роли, имеет смысл не указывать его.

Столбцы таблицы фактов: Дата, Имя, Пропущено (назначить 1) Столбцы Dimension / LookUpTable: Имя, Выполненный тест, (другая важная информация)

Обратите внимание, что вы используете полное имя (имя и фамилию) в одной ячейке. Если вы хотите быть строгим, вы можете назначить каждому имени свой уникальный идентификатор и использовать его в качестве первичного ключа для таблицы LookUp в случае, если есть два идентичных имени.

Надеюсь, это поможет!

0 голосов
/ 05 июля 2019

Это проще сделать с помощью Power Query.В этом примере у меня есть:

  • Одна таблица на каждом листе для каждой даты обучения.Показы не отображаются с пометкой «Да».
  • Каждая таблица имеет имя t_ и имя таблицы.

Затем Power Query объединяет все таблицы в одну и создает одну таблицу, отображающую всеиз консолидированных записей, которые объединены в сводную таблицу, и другую с уникальными именами, которые можно использовать в раскрывающемся меню.

Если у вас есть новая дата, просто добавьте новую рабочую таблицу сВ таблице на эту дату заполните информацию и обновите расчеты.

enter image description here

enter image description here

Вот таблица консолидированных данных ...

enter image description here

Вот точка, которая подсчитывает не показы ...

enter image description here

Чтобы получить сводную таблицу ... После настройки таблиц вставьте пустой запрос, выбрав Данные> Получить и преобразовать данные> Получить данные> Из других источников>Пустой запрос.

Затем нажмите «Расширенный редактор», удалите любой существующий текст и вставьте его:

let
    Source = Excel.CurrentWorkbook(),
    #"Filtered Rows" = Table.SelectRows(Source, each ([Name] <> "Summary")),
    #"Expanded Content1" = Table.ExpandTableColumn(#"Filtered Rows", "Content", {"Seat Number", "Name of Physician", "No Show?"}, {"Seat Number", "Name of Physician", "No Show?"}),
    #"Duplicated Column" = Table.DuplicateColumn(#"Expanded Content1", "Name", "Name - Copy"),
    #"Removed Columns" = Table.RemoveColumns(#"Duplicated Column",{"Seat Number"}),
    #"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Name - Copy", "Date"}}),
    #"Extracted Text After Delimiter" = Table.TransformColumns(#"Renamed Columns", {{"Date", each Text.AfterDelimiter(_, "_"), type text}}),
    #"Changed Type" = Table.TransformColumnTypes(#"Extracted Text After Delimiter",{{"Date", type date}}),
    #"Reordered Columns" = Table.ReorderColumns(#"Changed Type",{"Name", "Date", "Name of Physician", "No Show?"}),
    #"Renamed Columns1" = Table.RenameColumns(#"Reordered Columns",{{"Name", "Table Name"}})
in
    #"Renamed Columns1"

Затемнажмите Закрыть и загрузить в> Новый рабочий лист.

Чтобы получить таблицу уникальных имен .... Выполните те же шаги, что и выше, но в новом пустом запросе вставьте этот текст ...

let
    Source = Excel.CurrentWorkbook(),
    #"Filtered Rows" = Table.SelectRows(Source, each ([Name] <> "Summary")),
    #"Expanded Content1" = Table.ExpandTableColumn(#"Filtered Rows", "Content", {"Seat Number", "Name of Physician", "No Show?"}, {"Seat Number", "Name of Physician", "No Show?"}),
    #"Duplicated Column" = Table.DuplicateColumn(#"Expanded Content1", "Name", "Name - Copy"),
    #"Removed Columns" = Table.RemoveColumns(#"Duplicated Column",{"Seat Number"}),
    #"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Name - Copy", "Date"}}),
    #"Extracted Text After Delimiter" = Table.TransformColumns(#"Renamed Columns", {{"Date", each Text.AfterDelimiter(_, "_"), type text}}),
    #"Changed Type" = Table.TransformColumnTypes(#"Extracted Text After Delimiter",{{"Date", type date}}),
    #"Reordered Columns" = Table.ReorderColumns(#"Changed Type",{"Name", "Date", "Name of Physician", "No Show?"}),
    #"Renamed Columns1" = Table.RenameColumns(#"Reordered Columns",{{"Name", "Table Name"}}),
    #"Removed Columns1" = Table.RemoveColumns(#"Renamed Columns1",{"No Show?", "Date", "Table Name"}),
    #"Removed Duplicates" = Table.Distinct(#"Removed Columns1")
in
    #"Removed Duplicates"

Затем закройте и загрузите в> Новый рабочий лист.

Затем вы можете выбрать данные в сводной таблице и вставить сводную таблицу.Добавьте имена в раздел «Строки» и «Не показывать» в раздел «Значения».В заголовке столбца «Метки строк» ​​выберите «Фильтры значений»> «Больше, чем 0» (чтобы удалить пробелы).С помощью сводной таблицы вы можете дважды щелкнуть по числу неявок, и будет создан новый рабочий лист, показывающий, откуда пришли эти вычисления, поэтому гиперссылка не требуется.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...