Ваш вопрос может дать вам немного больше объяснений, как шаблон, так и инструменты, которые вы хотите использовать. Я предполагаю, что когда вы говорите "функция", вам нужны листовые формулы, а не код VBA. Вы просматриваете только первый экземпляр каждой пары полос / цветов или ищете последовательно совпадающую полосу и цвет, заданные полностью? Если последнее, ваша таблица будет включать в себя еще три строки следующим образом:
Start End Band Color
10 30 A A1
40 40 B A1
50 50 B A2
60 70 C B1
80 80 A B1
90 90 A A1
100 100 B A1
Если вам нужна эта более длинная таблица, вы можете создать две новые строки (либо на этом листе, либо на новой) и, предположив, что у вас есть "Число" в A1, использовать следующий код:
Ячейка D2 =IF(NOT(AND($B1=$B2,$C1=$C2)),IFERROR(MAX(INDIRECT("D1:D"&ROW(D2)-1))+1,1),0)
Ячейка E2 =IF(NOT(AND($B2=$B3,$C2=$C3)),IFERROR(MAX(INDIRECT("E1:E"&ROW(E2)-1))+1,1),0)
Расширьте код до полной длины столбца вашей таблицы. Результат будет следующим.
Number Band Color Start End
10 A A1 1 0
20 A A1 0 0
30 A A1 0 1
40 B A1 2 2
50 B A2 3 3
60 C B1 4 0
70 C B1 0 4
80 A B1 5 5
90 A A1 6 6
100 B A1 7 7
Отсюда, просто посмотрите номер каждого набора (1,2,3, ...) и найдите номер строки, чтобы получить информацию после. Если вы сначала разместите столбцы Start/End, вы можете использовать vlookup
для этого.
Если вы хотите только первое появление каждой пары (но почему пропущен ряд 8?), Вам понадобится немного больше логики. Для этого может потребоваться дополнительный столбец, но дополнительная логика будет довольно простой.