Нужна формула для добавления ячейки B5 на все доступные листы (будущие листы будут созданы) и отображения итоговой суммы в ячейке D5 - PullRequest
0 голосов
/ 16 мая 2019

Мне нужна формула на листе 1! D5 для суммирования ячейки B5 из всех доступных листов.Проблема в том, что у меня есть командная кнопка на Sheet1, которая создает новый лист и дает ему имя на основе текущего месяца и года.Так что я не могу просто поставить = SUM (sheet1: sheet5 (B5)), потому что любой новый лист будет создан за пределами листов 1-5 и не будет включен в эту формулу.

Я пробовал = SUM (sheet1: sheet5 (B5)), но это будет работать только некоторое время.

Мне нужна формула для добавления B5 с любого листа, включая все недавно созданныелисты.Я открыт для использования VBA, но я подумал, что может быть проще, если есть формула, которую я могу просто вставить в ячейку и скопировать ее на каждый новый созданный лист.

Код, предложенный ниже, работает нормально, но дляПо какой-то причине первый код не обновляется сам.Я должен нажать на D5 и нажимать ввод каждый раз (это не то, что я хочу) D5 Doesn't Update Itself

1 Ответ

2 голосов
/ 16 мая 2019

Возможно UDF:

Function AddB5() As Double
    Dim ws As Worksheet
    Dim B5Return as Double

    For Each ws In ThisWorkbook.Worksheets
        B5Return = B5Return + ws.Range("B5").Value
    Next

    AddB5 = B5Return
End Function

Вставьте это в новый модуль, тогда вы можете использовать его в формуле:

=AddB5()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...