![](https://cdn.wiki-base.com/7335597/excel_formula_match_first_does_not_begin_with__2.png.webp)
Загальна формула
(=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.