Страницы: 1
RSS
Значение из соседнего столбца
 
Приветствую!
Задачка как кажется с первого взгляда простая: как сделать так, чтобы при выборе значения из столбца А (например из ячейки А4 значение "4"), в ячейку D5, в ячейке E5 автоматически отображалось соседнее значение для выбранной ячейки А4, то есть значение из ячейки В4 ("Г")?
Через функцию ПОИСКПОЗ не совсем корректно работает, в случае если у нас есть два одинаковых значения, в ячейке В4 будет отображено значение для первого попавшегося выражения, например, если выбрать ячейку А6, то в Е5 будет отображаться "Д", а не "Е".
Проще говоря, если в ячейке D5 прописана формула "=A6",  то в ячейке E5 я хочу увидеть букву "Е".

Нашел похожую тему, в которой предлатается решать задачу через ПОИСКПОЗ и Макрос.
Всё же хочется попробовать решить задачу формулой.

Есть конечно вариант, если для ПОИСКПОЗ диапазон сократить для одной ячейки, в этом случае всегда будет выбираться одна единственная ячейка. Но вопрос, как можно диапазон массива привязать к ячейке D5, в которой ссылка на ячейку А4?

Может у есть более простое решение?
Изменено: MaxWooD - 24.04.2025 14:45:47
 
Протянуть формулу вправо не подходит?
 
Цитата
написал:
если выбрать ячейку А6
вы выбираете значение из диапазона А:А, а не ячейку. Файл не смотрел, ро скрину решил что  у вас список через проверку данных сделан
Изменено: bigorq - 24.04.2025 14:52:21
 
MaxWooD, добрый день. Вариант для свежих версий.
=СМЕЩ(ИНДЕКС(A:A;СТРОКА(ДВССЫЛ(ПСТР(Ф.ТЕКСТ(D5);2;99999))));;1)
 
=ВПР(D5;A:B;2;0)
=ИНДЕКС(B:B;ПРАВСИМВ(Ф.ТЕКСТ(D5);ДЛСТР(Ф.ТЕКСТ(D5))-2))
Изменено: sotnikov - 24.04.2025 15:20:18
 
Вариант покомпактнее
Код
=СМЕЩ(ДВССЫЛ(ПСТР(Ф.ТЕКСТ(D5);2;99999));0;1)
 
Цитата
написал:
=ВПР(D5;A:B;2;0)
Цитата
написал:
не совсем корректно работает, в случае если у нас есть два одинаковых значения, в ячейке В4 будет отображено значение для первого попавшегося выражения,
 
Цитата
написал:
Проще говоря, если в ячейке D5 прописана формула "=A6",  то в ячейке E5 я хочу увидеть букву "Е".
Буквально выполнить это пожелание можно при помощи функции ВЫЧИСЛИТЬ - но требуется поддержка макросов (см. пример).

Однако, я бы рекомендовал в столбце А использовать уникальные данные (например, добавьте дробные части к своим пятёркам, но скройте их форматом ячеек) - тогда обычные формулы ПОИСКПОЗ() и ИНДЕКС() или даже просто ВПР() будут прекрасно справляться.

Альтернатива: оставить всё как есть, но вместо ПОИСКПОЗ() и первого вхождения пятёрки всегда находить её последнее вхождение при помощи ПРОСМОТР()...

===========================
@Матрос, Ваше решение элегантнее )))
Изменено: IKor - 24.04.2025 15:08:19
 
МатросНаЗебре,
Цитата
написал:
Вариант покомпактнее
Ну да и вправду компактнее :D  
 
Alex, МатросНаЗебре, огромное спасибо!
Вы монстры Экселя ;)  
Страницы: 1
Читают тему
Наверх