Подсчитать количество именованных диапазонов в Excel VBA - PullRequest
0 голосов
/ 08 ноября 2019

У меня 16 именованных диапазонов на листе. Это число может измениться. Я хочу, чтобы число определяло количество слайдов в powerpoint.

1 Ответ

1 голос
/ 08 ноября 2019

ПОСКОЛЬКУ у вас есть смесь между именованными диапазонами «Рабочая тетрадь» и «Рабочая таблица», поэтому вам придется немного хитрить в своем решении. По сути, 9 из названных вами диапазонов на вашем листе не принадлежат листу, на котором они находятся. Они принадлежат всей книге.

Для этого вы можете пройтись по всем именованным диапазонам и посмотреть, назван ли ваш рабочий лист как часть адреса именованного диапазона. Это может потребовать некоторой настройки в зависимости от названий вашего листа, но это поможет вам в этом:

Sub countNamedRanges()
    Dim nm As Name
    Dim nameCount As Integer

    'loop through all names in the workbook
    For Each nm In ThisWorkbook.Names
        If Split(nm.RefersTo, "!")(0) = "=Sheet1" Then nameCount = nameCount + 1
    Next

    Debug.Print nameCount
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...