#REF! именованные диапазоны отображаются только после повторного открытия книги

После запуска всего моего проекта я пытаюсь удалить все именованные диапазоны в базовой книге с помощью #REF! ошибки в них. Я делаю это, запустив CleanUpSub в конце:

Sub CleanUp()
    Dim namy as name
    For Each namy In ActiveWorkbook.Names
        If InStr(1, namy.RefersTo, "#REF!") Then
            namy.Delete
        End If
    next namy
End Sub

Тем не менее, мой CleanUp()Sub не определяет мой #REF! именованные диапазоны. Я думаю, что это та же проблема, что и в случае удаления разбитых именованных диапазонов в Excel с помощью VBA (я знаю, что это, вероятно, дубликат, но у меня нет ответа на вопрос, и у меня недостаточно репутации, чтобы комментировать существующий вопрос, и ниже я привожу некоторые дополнительные идеи).

Интересное наблюдение состоит в том, что когда я закрываю и снова открываю свою рабочую книгу, вышеупомянутый подпункт ДОЛЖЕН идентифицировать #REF! диапазоны. Кто-нибудь может объяснить это поведение? Если мы сможем это объяснить, я подозреваю, что и это, и связанная с этим проблема могут быть решены.

0 ответов

Другие вопросы по тегам