Формула для повторения и увеличения чисел и сброса при изменении идентификатора - PullRequest
0 голосов
/ 15 января 2020

Я ищу начало в правильном направлении и надеюсь, что кто-то на этом форуме столкнулся с этой проблемой. У меня есть таблица Excel с 24K работами и техником, назначенным на каждую работу. Эти техники имеют 40 недель, чтобы выполнить все назначенные задания. У меня есть вспомогательная таблица с идентификатором каждого специалиста и количеством рабочих мест в неделю, которое необходимо для выполнения всей работы. Я отсортировал работу по географическому признаку c по эффективности. Мне нужна формула, которая будет проверять идентификатор технического специалиста, и если они получают 3 рабочих места в неделю, первые 3 будут иметь 1, а следующие 3 - 2 и так далее. И когда он переключает Техника, он сбрасывает счетчик.

В приведенном ниже примере для Tech 1 назначено 3 работы в неделю, а для Tech 2 - 2 работы в неделю.

| JobID | Tech   | Grouping |
|-------|--------|----------|
| BK025 | Tech 1 | 1        |
| CD044 | Tech 1 | 1        |
| DE024 | Tech 1 | 1        |
| DE031 | Tech 1 | 2        |
| DE035 | Tech 1 | 2        |
| FT083 | Tech 1 | 2        |
| IR004 | Tech 2 | 1        |
| IR006 | Tech 2 | 1        |
| IR052 | Tech 2 | 2        |
| IR061 | Tech 2 | 2        |
| IR062 | Tech 2 | 3        |
| IR072 | Tech 2 | 3        |

Я искал SO, и Google искал ответ, но, возможно, не использовал правильные ключевые слова. Я нашел эту формулу =ROUNDUP((ROW()-offset)/repeat,0) - найдено в exceljet - что будет работать, но чтобы заставить его работать должным образом, мне нужно было бы отфильтровать каждую технологию в отдельности.

1 Ответ

0 голосов
/ 15 января 2020

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

=ROUNDUP(COUNTIF(B$2:B2,B2)/VLOOKUP(B2,$E$1:$F$3,2,0),0)

enter image description here

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