Как вернуть первое непустое значение из списка?
Вложенные ЕСЛИ: =ЕСЛИ(A1<>""; A1; ЕСЛИ(B1<>""; B1; ЕСЛИ(C1<>""; C1; ""))). В Excel 365 элегантнее: =ПРОСМОТРX(TRUE; A1:E1<>""; A1:E1).
Задача: в строке несколько столбцов, часть пуста. Нужно вернуть первое заполненное значение — для приоритетных списков, объединения данных из разных источников.
Вложенные ЕСЛИ (любая версия)
=ЕСЛИ(A1<>""; A1; ЕСЛИ(B1<>""; B1; ЕСЛИ(C1<>""; C1; "")))
Работает, но громоздко при большом количестве столбцов.
ПРОСМОТРX (Excel 365)
=ПРОСМОТРX(ИСТИНА; A1:E1<>""; A1:E1; "")
Ищет первую ячейку, где условие «не пусто» истинно, и возвращает её значение.
ПРОСМОТР (любая версия)
=ПРОСМОТР(2; 1/(A1:E1<>""); A1:E1)
Возвращает последнее непустое значение (а не первое).
Пример: приоритет контактов
Мобильный → рабочий → домашний → email:
=ПРОСМОТРX(ИСТИНА; B2:E2<>""; B2:E2; "Нет контакта")
Вернёт первый заполненный контакт из четырёх столбцов.