|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.02.2012, 17:09 | #1 |
Новичок
Джуниор
Регистрация: 09.02.2012
Сообщений: 2
|
Выручайте! Проблема с функцией СМЕЩ() в именованом диапазоне
Ребята выручайте, сломал всю голову, не пойму как сделать.
Прошу прощения если пишу много, просто что бы было понимание того что делаю, а так основная проблема описана ниже. Создаю структуру с тремя связанными раскрывающимися списками. Соответсвенно использую функцию СМЕЩ(). 1-й список - простой диапазон. 2-й список - СМЕЩ() с ПОИСКПОЗ() по уникальным значениям 1-го диапазона. =СМЕЩ(Лист2!$A$2;1;ПОИСКПОЗ(Лист1!$ K28;Лист2!$B$2:$DA$2;0);ИНДЕКС(Лист 2!$B$1:$DA$1;ПОИСКПОЗ(Лист1!$K28;Ли ст2!$B$2:$DA$2;0))) 3-й список - СМЕЩ() с ПОИСКПОЗ() по НЕ уникальным значениям 2-го диапазона. =СМЕЩ(Лист2!$A$2;1;ПОИСКПОЗ(Лист1!$ L28;Лист2!$B$2:$DA$2;0);ИНДЕКС(Лист 2!$B$1:$DA$1;ПОИСКПОЗ(Лист1!$L28;Ли ст2!$B$2:$DA$2;0))) Соответственно, возникает проблема с тем что в 3-м списке при поиске значений по 2-му списку, он находит первое подходящее значение (потому что они НЕ уникальны), и берет пренадлежащий ему диапазон значений, а надо, что бы брал нужный. Думал решить проблему выбором начальной позиции в функции СМЕЩ(Лист2!$A$2;....), задав ее формулой, зависящей от выбранного значения в 1-м смиске (Тк 1-й список+2-й спсиок будет уже УНИКАЛЬНОЕ значение). Но вот тут ПРОБЛЕМА: Функция СМЕЩ() никак не хочет воспринимать начальную позицию ввиде формулы. Беру например такую: =АДРЕС(2;ПОИСКПОЗ(Лист1!$K3;Лист2!$ B$2:$DA$2;0);;;"Лист2") проверяю в любой ячейке, возвращет значение Лист2!$B$2, то что надо!! Но когда подставляю формулу в СМЕЩ() он ругается и выдает ошибку. Соответственно получается вот так: =СМЕЩ(АДРЕС(2;ПОИСКПОЗ(Лист1!$K3;Лист2!$B $2:$DA$2;0);;;"Лист2");1;ПОИСКПОЗ(Лист1!$L28;Лист2!$B$2:$ DA$2;0);ИНДЕКС(Лист2!$B$1:$DA$1;ПОИ СКПОЗ(Лист1!$L28;Лист2!$B$2:$DA$2;0 ))) Всю голову уже сломал, не понимаю что ему не нравится? может все дело в том что списки находятся на листе1, а диапазоны значений на листе 2?! Или он в принципе не воспринимает начальную позицию ввиде формулы? ЗЫ: Функция СМЕЩ() используется при задании диапазона Если есть идеи буду ОЧЕНЬ благодарен!!! Последний раз редактировалось Antijoke; 09.02.2012 в 17:19. |
09.02.2012, 17:22 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
результат функции АДРЕС - это срока, а не ссылка на ячейку.
ДВССЫЛ(АДРЕС(...)) - вернет ссылку на ячейку а еще проще - используйте ИНДЕКС для получения ссылки на ячейку
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
09.02.2012, 17:36 | #3 |
Новичок
Джуниор
Регистрация: 09.02.2012
Сообщений: 2
|
Действительно, так заработало!
Буду продолжать. Спасибо!!! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблема с функцией | MeTeOpA | C# (си шарп) | 6 | 11.07.2011 00:07 |
Проблема с функцией strtok | Mr.Merso | Общие вопросы C/C++ | 0 | 08.05.2011 20:01 |
проблема с функцией | saix | Общие вопросы C/C++ | 14 | 28.10.2010 19:07 |
Прошу помочь с функцией СМЕЩ | kzld | Microsoft Office Excel | 4 | 29.01.2009 16:55 |