Страницы: 1
RSS
СМЕЩ не работает в массиве если параметры заданы формулой
 
Добрый день.

Задача такая: необходимо вывести в столбец значения другого столбца пропустив пустые ячейки. Сложность в том, что через каждые 50 строчек должен меняться диапазон. Поэтому мысль пришла к такой формуле  
{ЕСЛИОШИБКА(ДВССЫЛ("D"&НАИМЕНЬШИЙ(ЕСЛИ(СМЕЩ($D$2;ЦЕЛОЕ(СТРОКА()/50)*50;0;50;1)="";"";СТРОКА(СМЕЩ($D$2;ЦЕЛОЕ(СТРОКА()/50)*50;0;50;1)));СТРОКА()-ЦЕЛОЕ(СТРОКА()/50)*50-1));"")}

Однако, она не работает, но если вместо  ЦЕЛОЕ(СТРОКА()/50)*50 поставить "0"

{ЕСЛИОШИБКА(ДВССЫЛ("D"&НАИМЕНЬШИЙ(ЕСЛИ(СМЕЩ($D$2;0;0;50;1)="";"";СТРОКА(СМЕЩ($D$2;ЦЕЛОЕ(СТРОКА()/50)*50;0;50;1)));СТРОКА()-ЦЕЛОЕ(СТРОКА()/50)*50-1));"")}

то работает.

Хотелось бы понять, почему так и как мне выкрутиться тогда,чтобы диапазоны менялись
Изменено: Sascvotch - 24.05.2018 15:59:49
 
а вам обязательно нужны все эти смещ двссыл
Лень двигатель прогресса, доказано!!!
 
=ЕСЛИОШИБКА(ДВССЫЛ("D"&НАИМЕНЬШИЙ(ЕСЛИ(СМЕЩ($D$2;СУММ(ЦЕЛОЕ(СТРОКА()/50))*50;0;50;1)="";"";СТРОКА(СМЕЩ($D$2;ЦЕЛОЕ(СТРОКА()/50)*50;0;50;1)));СТРОКА()-ЦЕЛОЕ(СТРОКА()/50)*50-1));"")
Сам когда-то столкнулся с такой бедой. Решение подсказал Максим Зеленский.
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Цитата
Сергей написал: а вам обязательно нужны все эти смещ двссыл
необязательно. Но как сделать без них не знаю. Есть идеи?

Цитата
Bema написал: Сам когда-то столкнулся с такой бедой. Решение подсказал Максим Зеленский.
Подскажите теперь мне?)
Изменено: vikttur - 23.09.2021 12:15:20
 
Sascvotch, так я же выложил формулу. Добавил функцию СУММ.
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Bema, точно. Я только текст прочла. Весь день над ней бьюсь, уже мозг не работает. Спасибо.
 
вариант где выделено желтым там у вас в оригинальном примере было не пусто
Лень двигатель прогресса, доказано!!!
 
Цитата
Bema написал:
Решение подсказал Максим Зеленский.
Ну надо же  8-0  Ни за что бы не повторил сейчас :)
F1 творит чудеса
 
Sascvotch, вот что показывает пошаговый просмотр формулы. Ноль в фигурных скобках. На следующем шаге выдаёт ошибку ЗНАЧ.
Изменено: Bema - 24.05.2018 16:27:26
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Bema, точно, оно. Это из-за того, что использование функции СТРОКА подразумевает возврат массива
F1 творит чудеса
 
 Bema, Максим Зеленский, спасибо, теперь понятно почему не работало.
Сергей, и вам спасибо, ваш вариант пригодится для работы с одним диапазоном
Изменено: Sascvotch - 28.05.2018 11:39:46
 
Добрый день, всесильные экселя!

Помогите, пожалуйста, не понимаю как правильно написать формулу. Тема, вроде, похожа на эту, но разобраться сама не смогла(((

У меня 12 базовых таблиц одна за другой по столбцам, по принципу: город в ячейке, под ней таблица с данными. Таблицы одинаковые по структуре.

Из этих 12 таблиц должна быть найдена нужная по городу, и в ней по выручке найти название компании.
Я пишу:


ПРОСМОТРX(выручка;СМЕЩ(ПОИСКПОЗ(город;строка с наименованиями городов на базовом листе;0);смещение до колонки с данными по выручке;1;357;1)";СМЕЩ(ПОИСКПОЗ(город;строка с наименованиями городов на базовом листе;0);смещение до колонки с наименованиями компаний;1;357;1);"";0)


При пошаговом просмотре формулы ошибка в смещ(поискпоз).
Есть какой-то вариант как это можно сделать?



Заранее большое спасибо всем кто откликнется!
Изменено: Юлия - 23.09.2021 12:01:54
 
1. Создайте тему с названием, отражающим суть задачи.
2. Прикрепите небольшой пример.
3. Не пишите через множество пустых строк
Страницы: 1
Читают тему (гостей: 1)
Наверх