Доброго дня всем. Задача проявилась по новому. Так как необходимо суммировать последние N событий, которые в разном порядке для каждого наименования. Таким образом перед суммированием нужно чтоб формула нашла N событий назад и только потом считать сумму.
Суммировать последние N событий, которые в разном порядке для каждого наименования
03.01.2017 18:55:39
|
|
|
|
03.01.2017 20:03:23
спасибо. отличие от обычной формулы - то что массив просматривает все значения не равные 0 с самого начала и только потом ищет 3 самые поздние строки из этой выборки? здорово! =) спасибо. в экселе нет никакого инструмента для просмотра назад? )
обязательно ли задавать здесь "ИНДЕКС($F$1:$H6" диапазон с самого начала? или это чтоб не вписывать лишний отсчет строк?
Изменено: |
|
|
|
03.01.2017 20:18:16
можно так
=ЕСЛИОШИБКА(СУММ(ИНДЕКС($F$6:$H6;НАИБОЛЬШИЙ(ЕСЛИ(ИНДЕКС($F$6:$H6;;ПОИСКПОЗ(A6;F$5:H$5;))<>0;СТРОКА(F$6:F6)-5);F$1);ПОИСКПОЗ(A6;F$5:H$5;)):ИНДЕКС($F$6:$H6;СТРОКА()-5;ПОИСКПОЗ(A6;F$5:H$5;)));0) + есть еще способы
|
|||
|
|
03.01.2017 20:36:12
насколько критична расстановка $ в формуле? можно ли менять по своей нужде?
|
|
|
|
03.01.2017 21:30:11
поскольку формула протягивается только по строкам, фиксировать можно только 1-ю строку в ИНДЕКС, и соответственно в поиске столбца F$5:H$5 столбцы можно не фиксировать. =ЕСЛИОШИБКА(СУММ(ИНДЕКС(F$6:H6;НАИБОЛЬШИЙ(ЕСЛИ(ИНДЕКС(F$6:H6;;ПОИСКПОЗ(A6;F$5:H$5;))<>0;СТРОКА(F$6:F6)-5);F$1);ПОИСКПОЗ(A6;F$5:H$5;)):ИНДЕКС(F$6:H6;СТРОКА()-5;ПОИСКПОЗ(A6;F$5:H$5;)));0) |
|||
|
|
10.01.2017 22:40:46
Господа!!! Огромное спасибо! Особенно
|
||||
|
|
|||