
Обща формула
(=MATCH(TRUE,IF(LEFT(range,1)"N",TRUE),0))
Обобщение
За да съответствате на първата стойност, която не започва с определен низ, можете да използвате масив, базиран на функциите MATCH и LEFT. В показания пример формулата във F5 е:
(=MATCH(TRUE,IF(LEFT(code,1)"N",TRUE),0))
където "код" е наименуваният диапазон B5: B12.
Забележка: това е формула на масив и трябва да се въведе с control + shift + enter.
Обяснение
Ключът към тази формула е масивът или стойностите TRUE и FALSE, конструирани с този израз:
LEFT(code,1)"N"
Тук всяка стойност в посочения диапазон "код" се оценява с логическия тест "първата буква не е N". Резултатът е масив или TRUE и FALSE стойности като тази:
(FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE)
Този масив се подава във функцията MATCH като справочен масив. Справочната стойност е TRUE и типът на съвпадението е зададен на нула, за да принуди точно съвпадение. Функцията MATCH връща позицията на първата стойност, която не започва с буквата "N" (Z09876), която е 5.
ИНДЕКС и МАТЧ
За да извлечете стойност, свързана с позицията, върната от MATCH, можете да добавите функцията INDEX. В показания пример формулата във F6 е:
(=INDEX(value,MATCH(TRUE,LEFT(code,1)"N",0)))
Обърнете внимание, че използваме същата формула MATCH по-горе, за да предоставим номер на ред на INDEX, като масивът е зададен на именувания диапазон "стойност". Както преди, MATCH връща 5. INDEX след това връща стойността на тази позиция, -23.
Както и преди, това е формула на масив и трябва да се въведе с control + shift + enter.