Підсумовування тільки видимих ​​осередків

Якщо у нас є таблиця, по якій повинні вважатися підсумки, то важливу роль відіграє який саме функцією вони обчислюються, тому що в таблиці можуть бути:

  • включені фільтри
  • Приховані деякі рядки
  • Згорнуті згруповані рядки
  • Проміжні підсумки всередині таблиці
  • Помилки в формулах

Деякі з наведених нижче способів чутливі до цих чинників, деякі - ні. Це потрібно враховувати при виконанні обчислень:

Підсумовування тільки видимих ​​осередків

СУММ (SUM) - тупо підсумовує все в виділеному діапазоні без розбору, тобто і приховані рядки в тому числі. Якщо хоча б в одній комірці є будь-яка помилка - перестає вважати і теж видає помилку на виході.

ПРОМЕЖУТОЧНИЕ.ІТОГІ (SUBTOTALS) з кодом 9 в першому аргументі - підсумовує всі видимі після фільтра осередки. Ігнорує інші подібні функції, які можуть вважати внутрішні Проміжні підсумки в вихідному діапазоні.

ПРОМЕЖУТОЧНИЕ.ІТОГІ (SUBTOTALS) з кодом 109 в першому аргументі - підсумовує всі видимі після фільтра і угруповання (або приховування) осередки. Ігнорує інші подібні функції, які можуть вважати внутрішні Проміжні підсумки в вихідному діапазоні.

Якщо потрібно не підсумовувати, то можна використовувати інші значення коду математичної операції:

Підсумовування тільки видимих ​​осередків

Підсумовування тільки видимих ​​осередків

Посилання по темі

ПРОМЕЖУТОЧНИЕ.ІТОГІ з кодом 109.
Якщо приховані рядки, все ок. Але умова не поширюється на згруповані стовпці. Їх значення все одно вважає.

А підкажіть як зробити ВВР, щоб він працював з таблицею, де виставлено фільтр, і повертав тільки видимі рядки?

Не впевнений, що це можна нормально реалізувати формулою.
Я б писав для користувача функцію на Visual Basic для такого завдання.

Сергій Пепеляєв, якщо ви знайшли відповідь на своє питання, то прохання поділитися - теж цікавить це питання.

Підкажіть, як написати формулу середньозваженого значення без прихованих осередків. Наприклад, у мене формула така: = СУММПРОІЗ (A1: A20; D1: D20) / СУММ (D1: D20). Приховую осередки, але ця формула вважає і приховані осередки, а мені вони не потрібні. Як зробити, щоб вони не враховувалися, у мене не вистачає. тяму.

Юлія, я б зробив ще один стовпець з простим множенням A на D. Потім, після фільтра, вважав би за нього суму тільки видимих ​​за допомогою функцій ПРОМЕЖУТОЧНИЕ.ІТОГІ або АГРЕГАТ і ділив на таку ж суму за D.

я так вже зробила. Хотіла зробити в одній комірці щоб не захаращувати файл, тому що таблиця з великою кількістю стовпців. Всерівно велике спасибі за відпові т. З Новим роком Вас!

Микола, згоден з Вами функція АГРЕГАТ - потужна і корисна штука!

Більш того в поєднанні з «Розумними таблицями» працює просто чудово, наприклад:

= АГРЕГАТ (9; 3; Таблица1 # 91; Тамож.сбор # 93;), де: Таблица1 - назва розумної таблиці, а # 91; Тамож.сбор # 93; - стовпець розумної таблиці


Більш того цю функцію можна вставляти в автоматичну «рядок підсумків» розумної таблиці:
= АГРЕГАТ (9; 3; # 91; Тамож.сбор # 93;)

Добрий день, дозвольте запитання?
А що якщо мені необхідно порахувати проміжні підсумки (підсумувати) за будь-яким критерієм? Тобто як з функцією СУМЕСЛІ, але при цьому щоб приховані фільтром рядки не враховувалися? Ні в ПРОМЕЖУТОЧНИЕ.ІТОГІ ні у АГРЕГАТ такої альтернативи я не знайшов.
P.S. Мова йде про "розумної" таблиці і її фільтрі.

P.P.S. Спасибі, проблема вирішена.

А можете поділитися відповіддю.
Заздалегідь величезне спасибі.

Всім дякую! І прекрасних відпусток!

Застосував ПРОМЕЖУТОЧНИЕ.ІТОГІ з кодом 9. все прекрасно відобразилося. Але як тепер прикрутити нумерацію відображених рядків?


Використання будь-яких матеріалів сайту
строго за умови посилання на джерело.

ІП Павлов Микола Володимирович
ІПН 633015842586
свідоцтво про Державну 310633031600071