1

У меня более 100 листов, мне сложно сосчитать их один за другим.

Есть ли в одной строке формула для получения общего количества листов? Функция CELL или АДРЕС, возможно?

Я помню, как однажды использовал что-то подобное, но не могу вспомнить.

Спасибо.

3 ответа3

2

Вы должны использовать немного VB для этого.

Попробуйте "Таблицы -> без диаграмм"

Public Sub test()
    MsgBox ThisWorkbook.Worksheets.Count
End Sub

Попробуйте "Все листы" -> включая диаграммы

Public Sub test2()
    MsgBox ThisWorkbook.Sheets.Count
End Sub
2

Вот аккуратное решение на основе формул.

  1. Создайте New Name в Name Manager имен с именем wshNames со значением: =RIGHT(GET.WORKBOOK(1),LEN(GET.WORKBOOK(1))-FIND("]",GET.WORKBOOK(1)))

  2. В любой ячейке, в которой вы хотите показать количество листов, введите: =COUNTA(wshNames)

Примечание . Шаг 1 основан на формуле XLM. Подробнее об этом здесь - обратите внимание, что вам нужно сохранить в формате .xlsm. Этот метод заимствован у Дэвида Hager, с помощью этого .

1

Вставьте модуль, в книгу которого вы хотите сосчитать общее количество листов.

Затем скопируйте приведенный ниже код и нажмите Run

    Public Sub CountWorksheets()
       MsgBox "Total Sheets count:" & Application.Sheets.Count
    End Sub

Вы получите соответствующий вывод:

нажмите на ссылку, чтобы увидеть скриншот

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .