10.04.2008, 16:06
общий
это ответ
Здравствуйте, Mihal101!
Пусть в B1:B24 у Вас имеются числа.
1. Наипростейший способ. Например, в С1 пишем формулу
=НАИБОЛЬШИЙ($B$1:$B$24;1)+НАИБОЛЬШИЙ($B$1:$B$24;2)+НАИБОЛЬШИЙ($B$1:$B$24;3) и т д
Здесь очевидный недостаток - n никак не введешь, надо ручками написать суммирование.
Способ 2. В клетке D1 напишем число 1.
В клетке E1 Напишем формулу =НАИБОЛЬШИЙ($B$1:$B$24;D1) - этот столбец используем только для отладки, в дальнейшем его можно удалить.
В клетке F1 напишем формулу =НАИБОЛЬШИЙ($B$1:$B$24;D1)
В клетке D2 напишем формулу =D1+1
Копируем клетку E1, вставляем в E2
В клетке F2 напишем формулу =НАИБОЛЬШИЙ($B$1:$B$24;D2)+F1
Помечаем D2:F2
Размножаем формулы вниз до конца данных.
В столбце D получили номер элемента в диапазоне
В E - значение i-го максимума (где i = 1, 2, 3 ...) - Этот столбец для отладки, можно удалить.
В F - суммы i максимумов.
Способ 3.
Дополнение к способу 2.
В клетке G1 пишем формулу
=ИНДЕКС($F$1:$F$24;5)
Получим сумму пяти максимумов.
В принципе, можно столбец D не делать, можно поискать функцию, определяющую номер элемента в диапазоне, но так нагляднее.
Способ 4. - Вы его назвали - макрос. Принцип работы Вы описали. Единственное, я дополню, макрос можно оформить как функцию пользователя. Но это уже другой вопрос ...
Похоже, по эффективности это самое правильное
Об авторе:
Понеже не словес красных бог слушает, но дел наших хощет