Страницы: 1
RSS
подсчет среднего, но без учета нулей
 
Добрый вечер.  
Не могу сообразить как посчитать среднее значение без учета нулевых значений,  
для нескольких не смежных ячеек.
 
=СРЗНАЧ(ЕСЛИ(G10:G22>0;G10:G22))  
Если возможны отрицательные:  
=СРЗНАЧ(ЕСЛИ((G10:G22>0)+(G10:G22<0);G10:G22))
 
нет, ячейки не принадлежат одному диапазону.
 
Хотя и так будет работать:  
=СРЗНАЧ(ЕСЛИ(G10:G22<>0;G10:G22))  
Сбили Вы меня с панталыку :)
 
извините, за неясное изъяснение...  
 
вот, то что есть и то, что нужно.
 
Если у Вас так и есть - через строку:  
=СРЗНАЧ(ЕСЛИ(G10:G22*ОСТАТ(СТРОКА(G9:G21);2)<>0;G10:G22))  
Применимо к первому примеру...
 
спасибо.  
ни чего не понял ))).    
нужно кажется передохнуть.
 
Всем, ПРИВЕТ!  
Чёт на счёт  
=СРЗНАЧ(ЕСЛИ(G10:G22*ОСТАТ(СТРОКА(G9:G21);2)<>0;G10:G22))  
я тоже пока не понял.  :(  
Но разрешите усложнить задачу:  
применительно к данному примеру надо чтобы формула отображала  
в январе -  =СРЗНАЧ(G10)  
в феврале - =СРЗНАЧ(ЕСЛИ(G10;G12)  
в марте -   =СРЗНАЧ(ЕСЛИ(G10;G12;G14)  
и т.д. до декабря  
У меня лично получается очень громоздкая формула.  
 
С ув. VovanRU.
 
сори  
 
в январе - =СРЗНАЧ(G10)  
в феврале - =СРЗНАЧ(ЕСЛИ(G10;G12)  
в марте - =СРЗНАЧ(ЕСЛИ(G10;G12;G14)  
 
читать как  
 
в январе - =СРЗНАЧ(G10)  
в феврале - =СРЗНАЧ(G10;G12)  
в марте - =СРЗНАЧ(G10;G12;G14)
 
пока совершенствую только пример ))
 
VovanRU  
Ссылки на диапазоны можно заменить подобной конструкцией  
=G10:ИНДЕКС(G10:G33;МЕСЯЦ(СЕГОДНЯ())*2)
 
Евгений  
Для апельсинов так:  
=СРЗНАЧ(ЕСЛИ((A4:A24="апельсины")*B4:B24<>0;B4:B24))  
Прошу прощение за многословность :)
 
{quote}{login=kim}{date=12.02.2010 09:09}{thema=}{post}  
=G10:ИНДЕКС(G10:G33;МЕСЯЦ(СЕГОДНЯ())*2){/post}{/quote}  
Спасибо, kim.  
Чесно говоря не знал, что можно так задавать диапазон.   :((  
Проверил, все работает.  
Спасибо.  
 
С ув. VovanRU.
 
{quote}{login=kim}{date=12.02.2010 09:11}{thema=}{post}Евгений  
Для апельсинов так:{/post}{/quote}  
 
Спасибо, только закрыл уже все, завтра  
буду разбираться, тогда и отпишусь.
 
Дабы растянуть, в В29:  
=СРЗНАЧ(ЕСЛИ(($A$4:$A$24=A29)*$B$4:$B$24<>0;$B$4:$B$24))
 
Вернусь к своему примеру.  
Конструкция  
=G10:ИНДЕКС(G10:G33;МЕСЯЦ(СЕГОДНЯ())*2)  
работает со связанным диапазоном, а, повторюсь, с несвязанным как быть?  
в январе - =СРЗНАЧ(G10)  
в феврале - =СРЗНАЧ(G10;G12)  
в марте - =СРЗНАЧ(G10;G12;G14)  
Имеется ввиду, что в ячейках G11,G13,G15 и т.д. есть какие-то значения.  
 
С ув. VovanRU.
 
Используйте конструкцию со строкой(), приведённую kim'ом ранее, или сделайте нормальный пример с постановкой задачи есть->надо вот так.
 
Пока проще не получается, возможно Саша подсобит...  
=СРЗНАЧ(ЕСЛИ(Ч(СМЕЩ(G10;(СТРОКА($A$1:ИНДЕКС($A$1:$A$24;МЕСЯЦ(СЕГОДНЯ())*2))-1)*2;0))<>0;ЕСЛИ($G$10:ИНДЕКС($G$10:$G$32;МЕСЯЦ(СЕГОДНЯ())*2)<>0;$G$10:ИНДЕКС($G$10:$G$32;МЕСЯЦ(СЕГОДНЯ())*2))))
 
{quote}{login=Саша}{date=12.02.2010 10:31}{thema=}{post}Используйте конструкцию со строкой(), приведённую kim'ом ранее, или сделайте нормальный пример с постановкой задачи есть->надо вот так.{/post}{/quote}  
 
вот пример
 
Ну и где эти средние значения указывать?....  
E5=СРЗНАЧ(ЕСЛИ(ЕТЕКСТ($B$11:B11);$C$5:C5)) массив.  
далее растягиваем/копируем куда нужно.
 
Я думаю так:  
=СРЗНАЧ(ЕСЛИ(Ч(СМЕЩ($C$5;(СТРОКА($A$1:ИНДЕКС($A$1:$A$103;СТРОКА(A1)))-1)*8;0))<>0;Ч(СМЕЩ($C$5;(СТРОКА($A$1:ИНДЕКС($A$1:$A$103;СТРОКА(A1)))-1)*8;0))))  
Растягиваем вниз.
 
Имхо, стоит проверку на ноль добавить и оставить с етекстом или ещё как прицепиться с минимумом проверок.  
Т е как-то так:  
E5=СРЗНАЧ(ЕСЛИ(ЕТЕКСТ($B$11:B11);если($C$5:C5<>0;$C$5:C5)))  
Етекст быстрая функция, диапазоны здесь мелкие, не стоит просто так летучие фиговины использовать: кто знает какие расчёты там потом будут проводиться с этими средними.
 
Извините за неточность, см. пример.
 
Конкретно для вашего примера в  post_99419.xls можно так  
 
Ps Уверен, что  данные можно организовать более рацианально...
 
{quote}{login=Михаил}{date=12.02.2010 11:37}{thema=VovanRU}{post}Конкретно для вашего примера в  post_99419.xls можно так  
 
Ps Уверен, что  данные можно организовать более рацианально...{/post}{/quote}  
Спасибо, Михаил!  
Уже теплее.  :)  
Посмотрите пожлста в post_99435.xls  
 
С ув. VovanRU.
 
На счет  
" Ps Уверен, что данные можно организовать более рацианально... "  
К сожалению перестроить данные не могу, пример вырезан из годового отчета, его форму изменять никак нельзя. :(  
С ув. VovanRU.
 
Для post_99435.xls замените (ОСТАТ(СТРОКА($C$5:C58);8)=5) на  
(ОСТАТ(СТРОКА($C$5:C58);4)=1)  
Эти строки имеют какое то наименование? если да, используйте его
 
{quote}{login=Михаил}{date=12.02.2010 11:55}{thema=}{post} если да, используйте его{/post}{/quote}  
Понял, Михаил.  
Спасибо за подсказки.  
С ув. VovanRU.
 
{quote}{login=kim}{date=12.02.2010 09:11}{thema=}{post}Евгений  
Для апельсинов так:  
=СРЗНАЧ(ЕСЛИ((A4:A24="апельсины")*B4:B24<>0;B4:B24))  
Прошу прощение за многословность :){/post}{/quote}  
 
Спасибо, kim. Все работает.  
Вчера голова совсем не работала, с утра посмотрел - все не так сложно!
 
{quote}{login=kim}{date=12.02.2010 09:37}{thema=}{post}Дабы растянуть, в В29:  
=СРЗНАЧ(ЕСЛИ(($A$4:$A$24=A29)*$B$4:$B$24<>0;$B$4:$B$24)){/post}{/quote}  
 
Спасибо очень помогла, даже не верю что так просто оказалось решить мою проблемку )
Страницы: 1
Читают тему
Наверх