Удаление определений скрытых имен с недопустимыми именами в Excel 2003
чтобы попытаться очистить скрытые имена в моем файле Excel. Это работает для большинства скрытых имен, но не для нескольких имен _123Graph. Я не уверен, откуда взялись эти имена, но когда я пытаюсь их удалить, я получаю ошибку автоматизации 1004.
В базе знаний упоминается, что имена с пробелами могут вызвать ошибку. Есть ли способ удалить их?
Excel 2007 и более поздние версии решают эту проблему. но быстрое решение для Excel 2003:
Перейдите в меню «Инструменты» — «Параметры» — вкладка «Общие» — «Проверьте стиль ссылки R1C1». Затем нажмите «ОК».
Затем вам будет предложено ввести новое имя для каждого из поврежденных имен.
. затем вы можете вернуться и снять флажок R1C1.
Я использую отличную надстройку Name Manager , чтобы, хм, управлять именованными диапазонами в моих книгах, включая все эти надоедливые, такие как приведенный вами пример, которые автоматически создаются Excel при автофильтрации и т. Д., Которые обычно не отображаются.
Это позволяет фильтровать имена по типу, местоположению, области действия и т. д. и вообще переносит ужасный встроенный диалог на следующую неделю.
Изменить. Если об установке надстройки не может быть и речи, то добавление следующего кода в стандартный модуль позволит вам просмотреть имена в рабочей книге и удалить элементы-нарушители.
Если имен очень много, вы сможете изменить это в соответствии со своими потребностями.
Скрытые имена в Excel
В процессе работы над моделью в Excel возникла загадочная неисправимая ошибка. Т.к. модель состоит из нескольких книг, необходимо включать обновление связей между книгами модели. При попытке включить обновление связей:
Заходим в редактор связей и видим причину ошибки:
Последняя связь в работе модели не участвует, но разорвать ее не удается. Excel ничего дополнительно не сообщает. Источник не найден, и все. Т.е. можно догадаться, что он есть, раз связь не разрывается…
Пытаюсь искать ссылку на книгу в формулах:
В Диспетчере имен пусто:
Не удается найти источник ошибочной ссылки…
Распаковываю книгу и копаюсь в xml файлах:
Наводит на размышления… Изучаю атрибуты класса Names во встроенном языке программирования, пишу такую микро процедуру: 
После выполнения процедуры вижу приличный список имен в Диспетчере:
Удивляюсь, но не очень сильно =)
Удаляю имена и разрываю связь. Ошибка исчезает.
Возможно ли не пользуясь процедурой на VBA изменить статус скрытых имен? Я не нашел другого способа (Excel 2007).
Скрытые имена в Excel : 3 комментария
>> Возможно ли не пользуясь процедурой на VBA изменить статус скрытых имен?
Спасибо за макрос! Взял на вооружение.
Шикарно! Спасибо. Но не помогло ( Видимо, просто нужно удалить все именованные диапазоны.
Как убрать конфликт имен в Excel при копировании
Привет. Рад представить вам подробные инструкции по удалению скрытых имен в Excel. Возможно, вы столкнулись с ситуацией, когда при копировании листа в книгу Excel произошла ошибка, в которой говорилось, что имя уже существует и вам нужно выбрать новое или использовать его. Хорошо, если таких ошибок будет 2-3, а если их несколько сотен или тысяч, терпения не хватит, чтобы нажать ОК. Воспользовавшись приведенным ниже советом, вы навсегда избавитесь от ошибки! Итак, приступим:
1. Создание макроса удаления скрытых имен.
Я не нашел в Excel встроенной функции для решения этой проблемы, но есть замечательный макрос, с помощью которого мы избавимся от нее. Сначала вам нужно перейти в редактор макросов, для этого запустить Excel, открыть файл с проблемой и нажать ALT + F11. Откроется Microsoft Visual Basic для приложений, поэтому перейдите в меню «Вставка» и выберите «Модуль.
Откроется окно модуля. Вы должны поместить туда следующий код макроса:
Sub Удалить скрытые имена()
Dim n As Name
Dim Считается целым числом
В случае ошибки Продолжить Далее
Для каждого n в ActiveWorkbook.Names
Если не видно, то
n. Удалить
Счетчик = Счетчик + 1
Конец, если
Следующий n
MsgBox «Количество скрытых имен» & Количество & «Удалено»
Конец подзаголовка
Следовательно, это должно выглядеть так:
Хороший. Мы создали макрос, теперь осталось его применить.
2. Использование макроса для удаления скрытых имен в Excel.
Вернитесь в нашу книгу Excel, перейдите в меню «Просмотр», выберите там блок макросов и щелкните внутри него меню «Макросы.
В открывшемся меню выберите макрос «Удалить скрытые имена» и нажмите кнопку «Выполнить.
Макрос будет работать некоторое время (чем больше скрытых имен у вас в файле, тем дольше он будет работать) и отобразит сообщение о том, сколько имен было удалено. Поздравляю, вы избавились от проблемы и можете спокойно копировать листы.