Страницы: 1
RSS
Работа с диспетчером имен и списками
 
Добрый день, уважаемые форумчане.

столкнулся с такой проблемой:
есть 1 большой расчетный файл с большим количеством листов и разнообразных расчетов. для введения входных данных широко применяются списки значений, все реализовано через именованные диапазоны, имена списков соответственно есть в диспетчере имен.
теперь при вынесении какого либо листа в новую книгу вместе с листом переносятся и имена диапазонов, но выглядит это как то бессистемно переносятся не все имена существующие в книге, но и гораздо больше имен чем используется на листе. не знаете ли вы принцип по которому происходит выборка имен для новой книги?
далее вопрос как побыстрее и поудобнее выяснить какие именно имена используются на данном листе?
я пока нашел только команду /выделение группы ячеек - проверка данных , но так я вижу только где используется проверка данных но не вижу имен исп диапазонов, если диапазонов заданно много то это не удобно.
также при обратном перемещение выдернутого листа все имена использованные в обеих книгах складываются и начинают дублировать друг друга, это легко лечится удалением дубликатов но хочется узнать вдруг есть способ получше.

с большой надеждой жду от вас советов и обмена личным опытом приемов работы в эксель
 
имена задавайте не в области книги, а в области листа, тогда сможете пользоваться фильтром диспетчера имен
Живи и дай жить..
 
посмотреть какие имена используются: формулы - диспетчер имен и там имена и напротив них где они используются (нажмите на диапазон и отфильтруется по листам)
 
Слэн, так это на будущие разработки, обязательно попробую использовать
alexthegreat, так поможет только если сразу по умному сделал так как Слэн советовал выше а пока область применения у меня для всех имен книга ((( и как понять на каком листе сколько имен и где какое?
 
У меня в файле тоже область применения Книга.... но в диспетчере есть графа Диапазон... и диапазон начинается с названия листа можно нажать на него(на слово диапазон) и он отфильтруется по листам (а область применения так и останется книга). И так вы сможете увидеть где какое имя. у меня ексель 2010.
Если правильно понимаю суть вопроса....
Изменено: alexthegreat - 25.09.2014 09:50:55
 
Цитата
Blood81 пишет:
далее вопрос как побыстрее и поудобнее выяснить какие именно имена используются на данном листе?
можно макросом цикл по всем именам книги и поиском ссылок на них в формулах на листе. Что-то такого типа:
Код
Sub test_n()
Dim n As Name, a As Range, nStr$, fA$
With ActiveSheet.Cells
    For Each n In ThisWorkbook.Names
    If InStr(1, n.Name, "!") = 0 Then nStr = n.Name Else nStr = Mid$(n.Name, InStr(1, n.Name, "!") + 1)
        Set a = .Find(What:=nStr, LookAt:=xlPart, LookIn:=xlFormulas, MatchCase:=True)
        If Not a Is Nothing Then
            fA = a.Address
            Do
                MsgBox a.Address & " содержит (ссылается на) имя " & CStr(n.Name) & CStr(n.RefersTo)
                Set a = .FindNext(a)
            Loop While Not a Is Nothing And a.Address <> fA
        End If
    Next n
End With
End Sub
F1 творит чудеса
Страницы: 1
Наверх