Знайдено приховані імена

Інспектор документів знайшов приховані імена в книзі. Ці імена можуть містити приховані відомості про сценарії надбудови "Пошук розв’язання". Наприклад, якщо ви запускаєте сценарій із використанням надбудови "Пошук розв’язання", вона може зберігати інформацію про параметри обчислення та інші конфіденційні дані, як-от приховані імена в книзі.

Увага!: Корпорація Майкрософт надає приклади програмування тільки для ілюстрації, без гарантій або неявних. Це включає в себе, але не обмежується, неявні гарантії товарної придатності або придатності для певної мети. У цій статті припускається, що ви знайомі з мовою програмування, що відображається, і з інструментами, які використовуються для створення та налагодження процедур. Інженери служби підтримки Microsoft можуть допомогти пояснити функціональність певної процедури, але вони не модифікують ці приклади, щоб надати додаткову функціональність або сконструювати процедури відповідно до конкретних вимог.

Проблема

Інспектор документів не може видалити ці приховані імена за вас.

Рекомендоване вирішення

Щоб видалити приховані імена, запустіть такий макрос. У макросі відобразиться вікно повідомлення, у якому перелічено три елементи: (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

Примітка.:  Цю сторінку перекладено за допомогою засобу автоматичного перекладу, тому вона може містити смислові, синтаксичні або граматичні помилки. Ми вважаємо, що цей вміст стане вам у пригоді. Повідомте нас, чи була ця інформація корисною. Для довідки цю статтю можна переглянути англійською мовою.

Потрібна додаткова довідка?

Удосконалення навичок роботи з Office
Ознайомтеся з навчальними матеріалами
Отримуйте нові функції раніше за інших
Приєднайтеся до оцінювачів Office

Ця інформація корисна?

Дякуємо за ваш відгук!

Дякуємо, що знайшли час і надіслали нам відгук! Можливо, у нас не буде часу відповісти на кожен коментар, але докладемо максимум зусиль, щоб переглянути їх усі. Вас цікавить, як ми використовуємо ваші відгуки?

×