Часто я нахожу, что мне нужно найти значение из таблицы, используя несколько параметров. Например, в этой таблице у меня есть два столбца, содержащие два уровня категорий (например, категория "Продукты питания" с подкатегориями "Продовольственные товары", "Рестораны" и т.д.).

Если я хочу сделать что-то вроде подсчета% моих расходов на еду, которая пошла в рестораны, мне нужно будет вывести значение для продуктов питания / бакалейных товаров и разделить его на сумму всех моих записей о еде. Я мог бы получить значение для этого параметра двумя способами:

  • Создайте столбец "ключ", который является объединением двух категорий, затем выполните команду «INDEX /MATCH», чтобы найти соответствующее значение.
    • В "ключевом" примере: INDEX($ E $ 3: $ E $ 9, MATCH("FoodRestaurants", $ B $ 3: $ B $ 9,0)))
  • Используйте SUMIFS() для суммирования всех значений с метками "Еда" и "Продовольственные товары" в каждом из соответствующих столбцов.
    • В исходной таблице: SUMIFS($ D $ 3: $ D $ 9, $ B $ 3: $ B $ 9, "Еда", $ C $ 3: $ C $ 9, "Рестораны")

С точки зрения удобства использования, я бы склонялся к последнему из этих двух, так как его легче построить и легче читать позже. Однако меня беспокоит то, что для очень больших рабочих книг это может стать гораздо менее эффективным, чем подход INDEX/MATCH. Кто-нибудь имеет представление об относительной эффективности этих двух операций? Бонусные баллы, если есть другой метод лучше, чем любой.

1 ответ1

0

Если вам нужен другой метод, вы можете использовать sumproduct, как показано ниже:

=SUMPRODUCT((B3:B9="Food")*(C3:C9="Groceries")*D3:D9)
Where B3:B9="Food" will give 1 if True
Also C3:C9="Groceries" will give 1 if True

И Sumproduct добавит продукты 1 * 1 * значения в 2015 году

Чтобы сравнить индекс / совпадение с сумфифом, нажмите здесь

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