Страница 1 из 1

Внешние связи в таблице MS Excel

Добавлено: 23 мар 2005, 02:21
ale140
Как удалить файл из списка внешних связей, если все ссылки на него удалены.
Спасибо всем, кто откликнется.

Добавлено: 26 мар 2005, 22:12
Naeel Maqsudov
Специально проверил.
Нет ссылок - нет файла в списке.
Все очищается само (возможно это происходит только после сохранения - сами проверьте).

Добавлено: 28 мар 2005, 10:15
Zigi
Если все ссылки удалены, то все очищается само и без сохранения.
Но в экселе есть неприятный глюк: иногда, когда из одной книги в другую копируются ячейки или листы, содержащие именованные диапазоны, то каким то образом в связях появляется ссылка на тот файл, из которого копировали, хотя самих ссылок на него нет.

Запуск данного макроса обычно решает проблему по удалению несуществующих связей.

Код: Выделить всё

Sub Killer()

    Dim i As Name
    On Error Resume Next
    For Each i In ActiveWorkbook.Names
        i.RefersToRange.Select
        If MsgBox("Удалить именованный диапазон " & i.Name & "?", vbQuestion + vbYesNo, "Че будем делать-то?") = vbYes Then
        i.Delete
    End If
    Next
End Sub
З.Ы. Чего то не получилось искусственно создать такие связи, может в 2000 офисе уже это багу исправили, а то раньше в 97 частенько такая беда была.