Формула на Excel: Съвпадение първо не започва с -

Обща формула

(=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.

Интересни статии...