Глядя на ваши предыдущие вопросы, похоже, что вы пытаетесь извлечь данные для определенного столбца с учетом двух критериев поиска - Месяц и Ветвь.
Для простоты я также предполагаю, что ветви для каждой подтаблицы абсолютно одинаковы, то есть все они существуют и находятся в одинаковом порядке.
С вашим рабочим листом, измененным следующим образом,
введите следующую формулу в B3
:
=INDEX(D4:D16,MATCH($B$1,$D$4:$D$16,0)+MATCH($B$2,$C$4:$C$16,0)-1)
Объяснение:
Вместо индексации в строке формула индексируется в требуемый столбец данных, т.е. D4:D16
.
Первая MATCH()
находит соответствующую строку месяца, а вторая - смещение соответствующей ветви. -1
требуется для преобразования индекса на основе единицы, возвращаемого вторым MATCH()
в смещение на основе нуля. (И да, MATCH($B$2,$C$4:$C$16,0)-1
можно было бы заменить на MATCH($B$2,$C$5:$C$16,0)
, но проще разобраться с -1
.)
Заметки:
- То, как формула была написана, означает, что заполнение формулы справа извлекает значение следующего столбца. Вот почему
D4:D16
является относительной ссылкой.
- В качестве альтернативы, чтобы получить данные другого столбца, просто замените
D4:D16
соответствующей ссылкой. (Абсолютная ссылка, $D$4:$D$16
, должна оставаться неизменной, если используется один заголовок Month, как объясняется далее.)
- Несколько заголовков для каждого месяца не требуется, даже при извлечении данных из столбца, отличного от первого. Только первый столбец данных нуждается в одном или, альтернативно, вместо этого может использоваться объединенный заголовок. (Вот почему
$D$4:$D$16
является абсолютной ссылкой.)