имеется: список-структура. в примере для наглядности строки сгруппированы, в реале - не будут структура описывается в доп.столбце - ручками ставится № уровня. нужна общая формула суммы для любого уровня - как суммы нижележащих строк с уровнем на 1 больше текущего, но с ограничением - суммировать строки до следующего уровня, равного текущему. мне кажется, что-то подобное уже было. возможно - не раз. но то ли поиск меня не понял, то ли у него настроения нет - короче, ничего путного за приемлемое время я не нашёл.
со своими формульными "талантами" я нагородил бог весть что :( правда - рабочее, но уж больно некузявое.
прошу уважаемых планетян-формулистов помочь мне либо подкорректировать мой вариант, либо предложить своё чудо-решение. чтобы не было скучно - бзики от начальства: - больше никаких доп.столбцов (хоть вручную. хоть формулами); - никаких "трёх пальцев" :)
ннууу... как-то длинно получилось. и эти вынужденные ЕНД() с двойнвм расчетом ПОИСКПОЗ()... увы, до ЕОШИБКА() майкрософт додумался лишь в 2007-м.
Игорь, из спортивного интереса (плюс есть шанс убедить начальство): формулой массива было бы намного короче? тормоза не страшны - объемы не слишком большие, хотя... строк - около 200, ну и столбцы - по рабочим дням месяца плюс по декадам плюс "итого" - около 25.
фрилансер Excel, VBA - контакты в профиле "Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
{=СУММ((МИН(ЕСЛИ(A9:A$38=A8;СТРОКА(A9:A$38)))>=СТРОКА(A9:A$38))*(A9:A$38=A8+1)*B9:B$38)} Но я думаю что тут еще проверку на отсутствующие нужно делать...
{quote}{login=kim}{date=29.07.2012 02:06}{thema=}{post}{=СУММ((МИН(ЕСЛИ(A9:A$38=A8;СТРОКА(A9:A$38)))>=СТРОКА(A9:A$38))*(A9:A$38=A8+1)*B9:B$38)}{/post}{/quote} а вот это уже красиво. спасибо. у меня что-то гораздо запутаннее получалось, да и то местами неверно считало :) файлик к предыдущему посту не прикрепился. но тогда уж - все три варианта:
"а диапазон до 42-й строки откуда и зачем?" достаточно 39 пока щелкал файлы, увидел что заполнено до 41, поэтому попровил формулу потом пригляделся, а у игоря аналогичная оказалась, так что зря выкладывал
"ура! случилоссь чудо! друг спас друга!!!" (с) не зря я надеялся на простое, короткое и элегантное решение. правда, для этого пришлось помучить наших гуру, устроив небольшое соревнование :)