Страницы: 1
RSS
Как задать нижнюю ячейку именованного диапазона (Excel 2010)?
 

Уважаемые специалисты!
Посоветуйте, пожалуйста, как мне решить следующую проблему.
У меня есть таблица в Excel 2010, в которой макросом из основного листа данные по определенному критерию выбираются на лист «Выборка».
На этом листе у меня в настоящее время есть именованный диапазон со следующим описанием
=СМЕЩ('Выборка'!$D$2;0;0;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))
На основе листа «Выборка» у меня строится график, в котором ряд задаётся через вышеназванный диапазон.
Но теперь мне потребовалось, чтобы данные для графика у меня собирались не с начала таблицы «Выборка», а с ячейки 1936.
Я поменял описание именованного диапазона на
=СМЕЩ('Выборка'!$D$1936;0;0;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))
Теперь график, действительно, начинается с данных, находящихся на ячейке 1936, но заканчивается этот диапазон не после последней цифры в диапазоне, как было раньше, а протягивается на 1936 ячеек вниз.
Я предполагаю, что мне нужно как-то изменить описание этого диапазона, но в Интернете я не смог найти ответ на свой вопрос.
Заранее Вам большое спасибо за любые советы.

 
=СМЕЩ('Выборка'!$D$1936;0;0;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-1935)
Соблюдение правил форума не освобождает от модераторского произвола
 
buchlotnik, спасибо большое!
Всё получилось именно так, как надо!
Жалко, что я не могу поставить Вам плюс за Вашу помощь..
 
='Выборка'!$D$1936:index('Выборка'!$D:$D;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))
По вопросам из тем форума, личку не читаю.
 
БМВ, спасибо большое за информацию.
В Интернете создание динамического диапазона, действительно, часто объясняется через атрибут "index".
Я обязательно попробую и вариант, предложенный Вами.
 
Уважаемые специалисты!
В 2020 г.  я с Вашей помощью смог сдвинуть начало и конец именованного диапазона для построения графика (см. описание диапазона ниже).
Цитата
=СМЕЩ('Выборка'!$D$1936;0;0;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-1935)
На за прошедшие годы в моей таблице накопилось много цифр, поэтому график стало очень неудобен для понимания.
Существует ли возможность изменить описание вышеприведенного именованного диапазона таким образом, чтобы в этот диапазон отбирались только значения за последний год?
То есть, можно ли описать этот диапазон таким образом, чтобы Excel находил последнюю заполненную ячейку в столбце и от этой ячейки выбирал 365 ячеек, которые находятся над ней?
Заранее Вам большое спасибо за любые советы.
Изменено: Широков - 16.07.2023 22:38:43
 
Специалистам обычно лень делать файл с данными на которых решать проблему. .Tребуется пример.

но в целом  index():index()  должно помочь,
=index('Выборка'!$D:$D;max(1;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-365)):index('Выборка'!$D:$D;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))
Изменено: БМВ - 16.07.2023 23:15:18
По вопросам из тем форума, личку не читаю.
 
БМВ
Спасибо большое за Вашу готовность помочь.
Я сейчас прикрепил к данному сообщению файл Example.xlsm, из которого я для простоты удалил все остальные листы и столбцы, оставив только лист "Выборка" и лист "График".
На листе "Выборка" именованные диапазоны называются "Дата_график" и "Значение".
В описание диапазона "Значение" я вместо
=СМЕЩ('Выборка'!$D$1936;0;0;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-1935)
вставил
=index('Выборка'!$D:$D;max(1;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-365)):index('Выборка'!$D:$D;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))

Но, к сожалению, при переходе на страницу графика появляется сообщение Excel, что есть какая-то ошибка.
Буду Вам очень благодарен, если Вы посмотрите данный файл.
 
А если перевести, не подойдет?
Код
=ИНДЕКС(Выборка!$D:$D;МАКС(1;ПОИСКПОЗ(1E+306;Выборка!$D:$D)-365)):ИНДЕКС(Выборка!$D:$D;ПОИСКПОЗ(1E+306;Выборка!$D:$D))
 
БМВ и gling
Спасибо большое, всё получилось так, как надо!
Я просто не знал, что в описании именованного диапазона нужно записать index как ИНДЕКС.
Кстати, если у кого-то будет схожая проблема, хочу обратить Ваше внимание на интересный момент в описании, приведённом gling.
Он дал такое описание
Цитата
=ИНДЕКС(Выборка!$D:$D;МАКС(1;ПОИСКПОЗ(1E+306;Выборка!$D:$D)-365)):ИНДЕКС(Выборка!$D:$D;ПОИСКПОЗ(1E+306;Выборка!$D:$D))
А БМВ дал такое описание (название листа в кавычках)
Цитата
=index('Выборка'!$D:$D;max(1;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-365)):index('Выборка'!$D:$D;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))
В файле примера у меня нормально сработало указание на лист без кавычек, но когда я вставил такое описание диапазона в мой рабочий файл (со всеми листами и столбцами), Excel сообщил об ошибке.
Поэтому я в своей рабочий файл вставил описание
Цитата
=ИНДЕКС('Выборка'!$D:$D;МАКС(1;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D)-365)):ИНДЕКС('Выборка'!$D:$D;ПОИСКПОЗ(1E+306;'Выборка'!$D:$D))
И всё нормально сработало!!!
Ещё раз большое спасибо!!!
Страницы: 1
Наверх