Форум по VBA и MS Office

VBA, Excel => Работа в программе "Excel" => Тема начата: Посетитель 10.08.2024 от 10 августа 2024, 14:56

Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Посетитель 10.08.2024 от 10 августа 2024, 14:56
Добрый день!
Интересует формула или мера, для подсчета статусов объекта, состоящего из нескольких подобъектов с разными статусами

Имеется таблица, со столбцами Объект; Подобъект, Статус подобъекта
В одном объекте может быть один или несколько подобъектов
Статус может быть (в работе, не приступали, завершено)
Нужна формула которая будет считать статус объекта из логики если даже 1 подобъект в работе, то весь объект в работе, если подобъекты ("завершены" + "не приступали") то объект "в работе"
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Администратор от 10 августа 2024, 15:05
Нужно смотреть структуру таблицы (как заполнены строки, столбцы).
Можете для теста сделать новый пустой файл и примерно заполните его.
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Посетитель 10.08.2024 от 10 августа 2024, 15:21
Направляю таблицу с примером данных и возможными ситуациями, с ожидаемым результатом

[ФАЙЛЫ ВАШИ ПОЛУЧЕНЫ - НЕТ НЕОБХОДИМОСТИ ВЫКЛАДЫВАТЬ ИХ ПОВТОРНО]
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Администратор от 10 августа 2024, 15:28
То есть нужно подсчитать не для каждого объекта отдельно, а общее значение для всех объектов?
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Посетитель 10.08.2024 от 10 августа 2024, 15:38
Да, данная формула нужна для Меры в модели данных
Либо формула для вычисляемого столбца для подстановки статуса для каждого объекта
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Администратор от 10 августа 2024, 15:40
Вы пишите какие-то умные слова.
Вы предоставили файл, в нём перечислены объекты. Теперь посмотрите мой ответ #3.
При чём здесь меры, модели данных. Я вам задал конкретный вопрос по файлу.
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Посетитель 10.08.2024 от 10 августа 2024, 15:45
Ответ на вопрос в сообщении #3 да
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Администратор от 10 августа 2024, 16:33
Я делаю простые формулы, с мерами мне не приходилось ещё работать.
Спросите на другом форуме. На этом форуме отвечаю только я.
Я с ходу не знаю, как такое сделать с помощью формул.
Название: Подсчет статусов объекта, состоящего из нескольких подобъектов с разными статусами
Отправлено: Посетитель 10.08.2024 от 10 августа 2024, 17:06
Вот такая формула для вычисления статуса каждого объекта:

"=ЕСЛИ(СЧЁТЕСЛИМН([Статус подобъекта];"в работе";[Объект];[@Объект])>0;"в работе";
ЕСЛИ(И(СЧЁТЕСЛИМН([Статус подобъекта];"не приступали";[Объект];[@Объект])>0;СЧЁТЕСЛИМН([Статус подобъекта];"завершен";[Объект];[@Объект])>0);"в работе";
ЕСЛИ(И(СЧЁТЕСЛИМН([Статус подобъекта];"завершен";[Объект];[@Объект])>0;СЧЁТЕСЛИМН([Статус подобъекта];"не приступали";[Объект];[@Объект])=0);"завершен";"не приступали")))"

Ну а меру из этого в модели данных не сложно посчитать

Количество объектов в работе:=CALCULATE(DISTINCTCOUNT('Имя_таблицы'[Объект]);'Имя_таблицы'[Статус объекта]="в работе")