Как я могу получить СУММУ МАКСИМАЛЬНОГО значения каждой строки в формуле одной ячейки?

#excel-formula

#excel-формула

Вопрос:

У меня есть следующий массив данных в ячейках B2: E10. Я хочу найти сумму максимальных значений в каждой строке массива… НО в формуле с одной ячейкой (чтобы получить результат в ячейке G12), вместо того, чтобы использовать промежуточные шаги, которые я показал в примере.

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

Я использую последнюю версию Excel, поэтому у меня есть доступ к формулам массива, LET() и т. Д., Но я изо всех сил пытаюсь достичь своей цели. Проблема в том, что MAX(), кажется, всегда работает со всей сеткой, поэтому подобная формула не работает:

 =SUM(MAX(INDEX($B$2:$E$10,SEQUENCE(9),0)))
 

Возможно, MAX не понимает формулы массива, поэтому я пробовал различные комбинации SORT(), например, но мне не удалось сгенерировать массив индивидуально отсортированных столбцов.

Эта проблема не блокирует меня, но теперь я задал себе вопрос, который мне интересно узнать, есть ли решение (которое может быть очень простым, и я просто не вижу его!).

Ответ №1:

MAX принимает массивы в качестве записи, поэтому он будет видеть все возвращаемые значения, прежде чем найти max.

Мы можем использовать MAXIFS и OFFSET для создания массива выходных данных построчно:

  =SUM(MAXIFS(OFFSET(B2:E2,SEQUENCE(9,,0),0,1,4),OFFSET(B2:E2,SEQUENCE(9,,0),0,1,4),"<>"))
 

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


Другой вариант — ПРОМЕЖУТОЧНЫЙ ИТОГ и СМЕЩЕНИЕ:

 =SUM(SUBTOTAL(4,OFFSET(B2:E2,SEQUENCE(9,,0),0,1,4)))
 

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

Комментарии:

1. Один ответ, и он сказал мне две вещи, которых я не знал! Я играл с MAXIFS, но не использовал трюк <>, когда все ячейки соответствуют критериям, а ПРОМЕЖУТОЧНЫЙ ИТОГ для меня совершенно новый! Большое спасибо, Скотт.