Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
04.02.2010, 12:55
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Ситуация такая. Есть excel-файл с несколькими десятками наименованных диапазонов на разных листах. После редактирования файлов диапазоны стали доступны лишь на тех листах, на которых они прописаны, что видно из столбца "Область" диспетчера имен (см. вложение). Если же удалить и создать диапазон вновь, всё становится нормально - область действия "Книга". В связи с этим вопрос: почему не удается поменять область видимости существующих диапазонов (см. вложение)? Можно было, конечно, написать VBA-код, который бы удалил и вновь воссоздал существующие диапазоны, но я не нашел нужных команд (как организовать цикл, как обратиться к пространству наименованных диапазонов книги и прочее). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
04.02.2010, 15:19
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Ильгиз, Если в поле область напротив имени есть название листа, значит это имя будет видно только на данном листе. Чтобы имя работало глобально, нужно удалить это имя один раз, после этого у вас имя должно остаться в списке, но в поле область уже будет пусто. После этого поправьте адрес на правильный. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
04.02.2010, 15:20
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Djon Player, Причем для изменения существующего имени используйте кнопку изменить, а затем нажать Ok. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.02.2010, 14:06
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Djon Player, А можно ли как-нибудь "обновить" все наименованные диапазоны с помошью VBA? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.02.2010, 14:20
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
ИльгизDjon Player, А можно ли как-нибудь "обновить" все наименованные диапазоны с помошью VBA?Смотря что под этим подразумевается. Я так понимаю, вы хотите, чтобы все именованные диапазоны, которые были ограничены конкретными листами, стали видимыми на всех листах. В принципе это можно сделать, написать макрос, который к примеру удаляет старое имя и создаёт новое, но уже глобальное. Правда тут возможно могут возникнуть проблемы. Например если где-то в формулах используется какое-то имя и это имя бы временно удалим, не испортиться ли при этом формула. Попробую сейчас что-нибудь намутить, если будут время. Ещё другая проблема в том, что скорее всего у вас некоторые имена встречаются в двух экземплярах, одно закреплено за конкретным листом, другое такое-же глобальное и у них может отличаться диапазон. Который из диапазонов считать за правильный. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.02.2010, 14:23
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Кстати экспериментируя сейчас с именами в Excel 2003, нашёл для себя новую фишку, как вывести список имен, раньше я это делал с помощью своего макроса. Возможно где-то на форуме это уже писали, но всё равно напишу. Встаём на чистый лист вашего файла, выделяем к примеру ячейку A1, затем нажимаем кнопку F3, затем нажимаем кнопку "Все имена", в результате в столбце A появится список имён. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.02.2010, 15:00
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Напомните кто-нибудь, как Диспетчер имён вызвать в Excel 2003. И не плохо бы файлик с именами вложить, а то я забыл, как делать имена ограниченные одним листом. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.02.2010, 16:03
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Сделал я макрос, смысл его работы такой, он просматривает все имена имеющие видимость лист, добавляет такое-же имя с видимостью книга, а имя с диапазоном листа удаляет. Т.к. одно и то-же имя может быть одновременно и у книги и ещё и для каждого листа, то в результате в качестве имени диапазона книги будут взяты данные по тому имени, у которого лист имеет максимальный индекс. Т.к. в ходе работы макроса происходит как удаление, так и добавление имен, то рекомендуется макрос запустить как минимум дважды, иначе могут не все имена обрабатываться. Можно конечно дальше ещё модифицировать макрос, но пока так. Перед применением обязательно сохранить свой файл. Макрос делал в Excel 2007 и проверял соответственно там-же. В Excel 2003 тоже работает, но правильный ли результат проверить не могу, т.к. не нашёл, как там диспетчер имён вызывать. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.02.2010, 16:05
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
Забыл удалить лишнюю переменную b Так что вместо "Dim a, b", достаточно написать "Dim a". ... |
|||
:
Нравится:
Не нравится:
|
|||
|
23.09.2016, 18:12
|
|||
---|---|---|---|
Область видимости диапазонов в Excel |
|||
#18+
Djon Player, Ctrl+F3 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
07.10.2016, 10:49
|
|||
---|---|---|---|
|
|||
Область видимости диапазонов в Excel |
|||
#18+
час58Djon Player, Ctrl+F3 ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=61&mobile=1&tid=2172927]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 169ms |
0 / 0 |