Как удалить скрытые имена в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Найдены скрытые имена
Инспектор документов обнаружил в книге скрытые имена. Под этими именами может храниться скрытая информация о сценариях надстройки «Поиск решения». Например, если вы используете надстройку «Поиск решения» для выполнения сценария, в ней может храниться информация о параметрах расчета и других конфиденциальных данных, например скрытые имена в книге.
Важно: Корпорация Майкрософт предоставляет примеры программирования только для иллюстрации без гарантии, выраженной или подразумеваемой. Это относится и не только к подразумеваемой гарантии пригодности и пригодности для определенной цели. В этой статье предполагается, что вы знакомы с языком программирования, который демонстрируется, и средствами, используемыми для создания и от debug procedures. Специалисты службы поддержки Майкрософт могут объяснить функциональные возможности конкретной процедуры, но не будут изменять эти примеры, чтобы предоставить дополнительные функции или процедуры по построению с учетом ваших конкретных требований.
Проблема
Инспектор документов не может удалить эти имена.
Рекомендуемое решение
Чтобы удалить скрытые имена, запустите следующий макрос: В макросе отображается окно сообщения с тремя элементами: (1), видимым или скрытым, (2) определенным и (3) ссылкой на это имя (ссылка на ячейку книги). Чтобы удалить или сохранить каждое определенное имя, выберите вариант Да или Нет.
Примечание: После удаления скрытых имен с помощью этого макроса надстройки (например, «Поиск решения») и макросы могут работать неправильно, и связанные с ними скрытые данные могут быть потеряны. Этот макрос действует на все имена, которые определяются как скрытые, а не только на те, которые были добавлены надстройкой «Поиск решения».
Внимание: Если имена листов содержат пробелы, при попытке удалить определенное имя может появиться сообщение об ошибке.
Удаление скрытых имен
' Module to remove all hidden names on active workbook Sub Remove_Hidden_Names() ' Dimension variables. Dim xName As Variant Dim Result As Variant Dim Vis As Variant ' Loop once for each name in the workbook. For Each xName In ActiveWorkbook.Names 'If a name is not visible (it is hidden). If xName.Visible = True Then Vis = "Visible" Else Vis = "Hidden" End If ' . ask whether or not to delete the name. Result = MsgBox(prompt:="Delete " & Vis & " Name " & _ Chr(10) & xName.Name & "?" & Chr(10) & _ "Which refers to: " & Chr(10) & xName.RefersTo, _ Buttons:=vbYesNo) ' If the result is true, then delete the name. If Result = vbYes Then xName.Delete ' Loop to the next name. Next xName End Sub
Как удалить скрытые имена в excel
При копировании листа из одного файла в другой, может появляться окно с предупреждением о том, что уже есть такое имя. При этом, если просто зайти в Диспетчер имен, то список может быть и совершенно пустым.
Можно отобразить скрытые имена с помощью небольшого макроса:

Чтобы воспользоваться данным алгоритмом, необходимо открыть редактор Visual Basic (клавиши Alt + F11 ) и вставить на лист модуля (если модуля нет, то выполнить команду Insert—Module):
Sub Unhidden_Name()
Dim vName As Variant
For Each vName In ThisWorkbook.Names
vName.Visible = 1
Next vName
End Sub
Затем вернуться в окно Microsoft Excel, запустить выполнение макроса в окне Макросов (клавиши Alt+F8).
В окне Диспетчера имен (клавиши Ctrl+F3) будет сформирован список всех имен, при необходимости их можно и удалить.
Оставьте комментарий!
На сообщение “Как увидеть скрытые имена в файле?” комментариев 8
- Nikolya :
26.08.2014 (17:17) О, да! меня это крайне раздражало! - Leonid :
28.08.2014 (13:00) Интересно, почему в окне Диспетчера имен он не показывает при любых фильтрах эти скрытые имена? - Олег :
22.03.2015 (12:32) Прекрасно, т.к. периодически встречаюсь при копировании листа - Ирина Викторовна :
03.10.2015 (19:47) Не буду пытаться понять почему так происходит, просто буду искать скрытые имена через данный макрос. Огромное спасибо! - SuzanJam :
04.11.2018 (02:42) Hey. I sent a screenshot. Did you get it? - Ольга Кулешова :
06.11.2018 (23:52) Hi! Your screenshot is not received - Павлик :
21.11.2018 (19:15) Не могу понять только одного: почему программа сама сразу не готова все имена показывать и не скрывать! - Эркинжон :
31.01.2022 (09:15) Большое спасибо, Вам
Публикации
- Нарастающий итог в Power Query
- Отключение «типов данных» в Power Query
- 2 способа создания отчетов по данным модели Power Pivot
- Функция Text.Format
- Удаление пустых строк и столбцов в Power Query
Страницы
- Анонсы расписания
- Видео и Статьи
- Вопрос-Ответ
- Контакты
- Об авторе
- Обучение в программе Microsoft Excel
- Корпоративное обучение
- Диаграммы
- Надстройки Power
- Новое в Excel 2013
- Работа с данными ячеек
- Работа с табличными массивами
- Форматирование
- Формулы и функции
Комментарии
- Светлана к записи Почему даты в фильтре не группируются?
- Эркинжон к записи Как увидеть скрытые имена в файле?
- Ольга Кулешова к записи Преобразование текста в число и наоборот
- Ольга Кулешова к записи Отключение «типов данных» в Power Query
- Ольга Кулешова к записи 2 способа создания отчетов по данным модели Power Pivot
Скрытые имена в Excel
В процессе работы над моделью в Excel возникла загадочная неисправимая ошибка. Т.к. модель состоит из нескольких книг, необходимо включать обновление связей между книгами модели. При попытке включить обновление связей:
Заходим в редактор связей и видим причину ошибки:
Последняя связь в работе модели не участвует, но разорвать ее не удается. Excel ничего дополнительно не сообщает. Источник не найден, и все. Т.е. можно догадаться, что он есть, раз связь не разрывается…
Пытаюсь искать ссылку на книгу в формулах:

В Диспетчере имен пусто:
Не удается найти источник ошибочной ссылки…
Распаковываю книгу и копаюсь в xml файлах:
Наводит на размышления… Изучаю атрибуты класса Names во встроенном языке программирования, пишу такую микро процедуру:

После выполнения процедуры вижу приличный список имен в Диспетчере:
Удивляюсь, но не очень сильно =)
Удаляю имена и разрываю связь. Ошибка исчезает.Возможно ли не пользуясь процедурой на VBA изменить статус скрытых имен? Я не нашел другого способа (Excel 2007).
3 Одна мысль на “ Скрытые имена в Excel ”
- ikki 16.08.2012 >> Возможно ли не пользуясь процедурой на VBA изменить статус скрытых имен? нет.