Найдите первое вхождение значения в строке и верните ячейку рядом с ним - PullRequest
0 голосов
/ 10 апреля 2019

Я хочу найти в строке первое вхождение «Больной» и получить дату справа рядом с ним.Любые идеи?

Мы попробовали это, но считаем, что есть более простой способ:

=SI.ERROR(INDICE(D2,COINCIDIR("Sick",C2,0)),SI.ERROR(INDICE(F2,COINCIDIR("Sick",E2,0)),INDICE(H2,COINCIDIR("Sick",G2,0))))

На английском языке:

=IFERROR(INDEX(D2,MATCH("Sick",C2,0)),IFERROR(INDEX(F2,MATCH("Sick",E2,0)),INDEX(H2,MATCH("Sick",G2,0))))

Я хочу найти прощеметод, потому что я должен сделать это для нескольких таблиц с различными размерами

1 Ответ

2 голосов
/ 10 апреля 2019

Когда все в одной строке:

    A     B             C       D             E     F             G
Row 2    ok    10/04/2019    sick    11/04/2019    ok    12/04/2019

Тогда следующая формула решит вашу проблему:

=INDEX(B2:G2;1;MATCH("sick";B2:G2)+1)

Это означает: в B2: G2 проверьте, может ли "больной" бытьнайден, и если да, возьмите столбец рядом с ним (следовательно, +1, поскольку MATCH() возвращает номер столбца).

Когда все находится в одном столбце:

Этоточно точка функции VLookup(): посмотрите на следующий пример:

1      A             B            C
2                title          Date
3                   ok    10/04/2019
4                 sick    11/04/2019
5                   ok    12/04/2019

Используйте следующую формулу:

=VLOOKUP("sick";B1:C4;2)

Это дает значение 11/04/2019 (после правильной ячейкиформатирование, конечно).

Значение: найдите значение «sick» в таблице B1: C4 и используйте соответствующее значение для 2-го столбца (содержащего запрошенную дату).

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