Используйте два списка критериев в суммировании

Я хотел бы проанализировать следующую таблицу, используя два списка критериев

введите описание изображения здесь

Я хотел бы суммировать столбец C в том случае, если A содержит элемент из списка 1 и B содержит элемент из списка 2. Я мог бы подумать об использовании формулы:

= SUMPRODUCT ((A: A = Список 1) * (B: B = Список 2) * (C: C))

Моя формула дает 2 (a, x, 1 + b, y, 1), но я хотел бы получить 3 вместо (a, x, 1 + b, y, 1 + a, y, 1).

Может кто-нибудь мне помочь?

Что-то вроде этого должно работать:

=SUM(SUMIFS(C:C,A:A,{"a","b"},B:B,"x"),SUMIFS(C:C,A:A,{"a","b"},B:B,"y")) 

Там могут быть более компактные формулы массива, которые вы могли бы написать, но если в каждом списке есть только две переменные, это не так уж плохо.

Если вы согласны с использованием формулы массива вместо формулы sumproduct (я считаю, что их легче читать, но они несут риск ошибочного ввода, когда они редактируются), попробуйте следующее:

= СУММ (ЕСЛИ (ЕОШИБКА (ПОИСКПОЗ (В1: B6, G2: G3,0)), "", (ЕСЛИ (ЕОШИБКА (MATCH (A1: A6, F2: F3,0)), "", С1: С6) )))

Это работает, создавая новый массив столбца A, где строки, которые соответствуют List1, показывают значение в столбце C, а строки, которые не соответствуют List1, показывают «». Этот новый массив затем используется для создания нового массива столбца B, где строки, которые соответствуют List2, показывают значение из нашего «нового столбца A-array» (который включает значения в столбце C, а также некоторые «») и строки которые не соответствуют списку2. В результате массив должен быть суммирован для предоставления окончательного одиночного ответа.

Поскольку это формула массива, когда вы вводите ее, вам нужно будет заполнить (каждый раз, когда вы редактируете ячейку), нажав:

CNTRL + SHIFT + ВВОД

а не просто

ВОЙТИ

Обратите внимание, что, хотя вы можете вместо этого выбрать все столбцы A / B в индексе, это обычно не рекомендуется, поскольку (в моем понимании) формула массива будет искать весь столбец, включая область за пределами используемого диапазона. Это значительно снижает производительность, поэтому для ваших целей вам, возможно, придется использовать один из других методов будущей проверки (например, индексирование произвольно большого «A1: A500» или создание некоторой формы косвенной формулы, которая включает поиск последних строка с данными в нем).

Попробуйте эту формулу в C1:

 =COUNTIF(F:F,A1)+COUNTIF(G:G,B1) 

Все значения = 2 соответствуют вашим критериям И (в List1 AND в List2)

  • В функции SUMIFS я получаю ошибку #VALUE
  • Формула Excel для отображения данных, когда третий символ J
  • Сравнение данных в Excel?
  • Excel vba обновляет форму
  • Макрос для копирования и вставки с одного листа на другой.
  • Как искать несколько критериев в VBA?
  • Добавление строк в Excel не обновляет код VB
  • Импортировать Module.bas из http / ftp?
  • Ограничение стиля кнопки сотового содержимого
  • Удаление / фильтрация содержимого ячейки в Microsoft Excel 2013
  • Искать столбец для конкретного текста и отображать любые / все строки, содержащие совпадение
  • Interesting Posts

    Excel vba устанавливается на уровне рабочей книги с именем range

    «Невозможно назначить ошибку массива» при заполнении массива с массивными массивами

    Выбрать все ячейки со значением под заголовком

    Excel VBA: если время находится между двумя моментами, добавьте текст в строку, а не пустую

    Как проверить данные в TextBox

    Незначительное признание номинальных значений CSV в R

    Использование IF – ELSE в SQL и VBA

    Создание триггера Excel для автоматического создания документа Word при добавлении строки

    API Microsoft Graph, доступ к разрешениям документов Excel

    Excel: найти значение для нескольких столбцов и вернуть столбец заголовка

    Delphi 7 с инструкцией..do не работает с переменной переменной

    Excel vba для фильтрации данных и установки значения в отфильтрованном списке переменной

    Копировать конкретные ячейки и вставить на другой лист

    Копировать ячейки «n» количество раз. «N» указано пользователем

    Как я могу конвертировать дату в текст при экспорте datagridview в excel?

    Давайте будем гением компьютера.