Задать вопрос
@OSBoy

Как в Excel изменить область действия именованного диапазона?

Приветствую сообщество!
Суть вопроса в том, что при создании именованного диапазона в Excel, по умолчанию его область действия: "Книга". Мне нужно ограничить область действия листом, но в диспетчере имён, почему-то, поле для изменения области действия неактивно!
68088ffb4c93f466385495.png
В качестве костыля получается сделать так: копируем лист, после чего в диспетчере имён появляется копия имени, но уже с областью действия для скопированного листа. После этого, имя с диапазоном "Книга" просто удаляем и исходный лист тоже удаляем. В принципе вариант рабочий, но не удобный, т.к. на одном листе может присутствовать достаточно много именованных диапазонов, и копировать/удалять их таким способом может быть достаточно муторно.
Наверно, должен быть способ делать это как положено, через редактирование имени в диспетчере?
  • Вопрос задан
  • 74 просмотра
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@OSBoy Автор вопроса
Пока, лучший из найденных мной вариантов - это создание имён ЧЕРЕЗ ДИСПЕТЧЕР, а не через окошко слева, на панели инструментов! Выделяем нужную ячейку или диапазон, жмём Ctrl+F3, жмём кнопку "Создать" и выбираем область действия.
Однако, это работает только при СОЗДАНИИ имён. Как штатными средствами Excel изменить область действия уже созданных имён, или, например, заставить его по умолчанию создавать имена с областью действия на текущий лист - я не нашёл.
Ответ написан
Комментировать
@Akina
Сетевой и системный админ, SQL-программист.
Имена хранятся в коллекциях по имени Names. Для книги и листа соответственно это Workbook.Names и Worksheet(idx).Names.

Желаемое действие - изменение области,- на самом деле потребует ПЕРЕМЕЩЕНИЯ объекта из одной коллекции в другую. Т.е. удалить из одной коллекции и добавить в другую. К тому же в ходе этого процесса существует потенция ошибки дублирования имени - ведь в пределах коллекции ключ (т.е. в пределах области имя) должен быть уникальным.

Как итог - изменения области действия имени диапазона просто не существует. Так что всё руками... отдельно прибить на старом месте, отдельно создать на новом.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы