2

Как создать функцию, которая будет возвращать первое непустое значение ячейки, но если оно определено в левой ячейке рядом с ней, оно перепрыгнет 2 ячейки и будет искать следующее значение.

Table:  
1 | 2 | 3 | 4 | 5 | 6 | 7 || 29 | 30 | 31 | 32...
a | b |   |   | c | d |   || a  | c  |    |
  |   |   | a | b |   |   || a  |    |    |
a | b | c | d | e | f | g || a  | c  | e  | g

из DL3:EW4873 - это значения, всегда в парах, но мне нужен только первый элемент значения и только если это значение уже не находится в диапазоне от EX до EK.

Также ячейки EX:FK - это место, куда будут идти формулы.

1 ответ1

5

ОК, эти диапазоны не перекрываются? В любом случае попробуйте эту версию, отрегулируйте диапазоны по мере необходимости

=INDEX(AO3:EU3,MATCH(1,INDEX(ISNA(MATCH(AO3:EU3,EK3:EX3,0))*(MOD(COLUMN(AO3:EU3)-COLUMN(D3),2)=0)*(AO3:EU3<>""),0),0))

Это ищет первое непустое значение в альтернативных ячейках, AO3, AQ3, AS3 и т.д., Которое не соответствует ни одному значению, найденному в EK3:EX3

Пересмотренное предложение:

Хорошо, основываясь на ваших комментариях, я предполагаю, что вам все еще нужны непустые данные из альтернативных ячеек, поэтому с данными в AO3:EI3 и с пустым EJ3 попробуйте скопировать эту формулу в EK3, чтобы получить следующее другое значение

=IFERROR(INDEX($AO3:$EH3,MATCH(1,INDEX((COUNTIF($EJ3:EJ3,$AO3:$EH3)=0)*(MOD(COLUMN($AO3:$EH3)-COLUMN($AO3),2)=0)*($AO3:$EH3<>""),0),0)),"")

когда значения заканчиваются, вы получаете пробелы .....

Пересмотренное предложение 2:

Попробуйте эту формулу только в EX3

=IFERROR(INDEX($DL3:$EW3,MATCH(1,INDEX((MOD(COLUMN($DL3:$EW3)-COLUMN($DL3),2)=0)*($DL3:$EW3<>""),0),0)),"")

а затем этот в EY3 скопировал через

=IFERROR(INDEX($DL3:$EW3,MATCH(1,INDEX((COUNTIF($EX3:EX3,$DL3:$EW3)=0)*(MOD(COLUMN($DL3:$EW3)-COLUMN($DL3),2)=0)*($DL3:$EW3<>""),0),0)),"")

Пересмотренная версия для "второй пары" - это должно просто подобрать соответствующие значения из первой формулы

=IFERROR(INDEX($DL3:$EW3,MATCH(1,INDEX((MOD(COLUMN($DL3:$EW3)-COLUMN($DL3),2)=0)*($DL3:$EW3<>""),0),0)+1)&"","")

и этот в EY3 скопирован через

=IFERROR(INDEX($DL3:$EW3,MATCH(1,INDEX((COUNTIF($EX3:EX3,$DL3:$EW3)=0)*(MOD(COLUMN($DL3:$EW3)-COLUMN($DL3),2)=0)*($DL3:$EW3<>""),0),0)+1)&"","")

изменить часть $EX3:EX3 зависимости от расположения формул .....

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .