У меня есть эта формула для расчета среднего значения различных параметров, присутствующих в множестве скважин (листы с историческими данными), ссылаясь на дату выборки:
=SUM(SUMIF(OFFSET('LP1'!$M5,1,MATCH(BJ$5,LP_1,0),1,1),">=0"),SUMIF(OFFSET('LP2'!$M5,1,MATCH(BJ$5,LP_2,0),1,1),">=0"),SUMIF(OFFSET('LP3'!$M5,1,MATCH(BJ$5,LP_3,0),1,1),">=0"),SUMIF(OFFSET('LP4'!$M5,1,MATCH(BJ$5,LP_4,0),1,1),">=0"),SUMIF(OFFSET('LP5'!$M5,1,MATCH(BJ$5,LP_5,0),1,1),">=0"),SUMIF(OFFSET('LP6'!$M5,1,MATCH(BJ$5,LP_6,0),1,1),">=0"),SUMIF(OFFSET('LP7'!$M5,1,MATCH(BJ$5,LP_7,0),1,1),">=0"),SUMIF(OFFSET('LP8'!$M5,1,MATCH(BJ$5,LP_8,0),1,1),">=0"))/SUM(COUNTIF(OFFSET('LP1'!$M5,1,MATCH(BJ$5,LP_1,0),1,1),">=0"),COUNTIF(OFFSET('LP2'!$M5,1,MATCH(BJ$5,LP_2,0),1,1),">=0"),COUNTIF(OFFSET('LP3'!$M5,1,MATCH(BJ$5,LP_3,0),1,1),">=0"),COUNTIF(OFFSET('LP4'!$M5,1,MATCH(BJ$5,LP_4,0),1,1),">=0"),COUNTIF(OFFSET('LP5'!$M5,1,MATCH(BJ$5,LP_5,0),1,1),">=0"),COUNTIF(OFFSET('LP6'!$M5,1,MATCH(BJ$5,LP_6,0),1,1),">=0"),COUNTIF(OFFSET('LP7'!$M5,1,MATCH(BJ$5,LP_7,0),1,1),">=0"),COUNTIF(OFFSET('LP8'!$M5,1,MATCH(BJ$5,LP_8,0),1,1),">=0"))
Формула отлично работает при наличии данныхдля каждой даты выборки, потому что функция соответствия не возвращает ошибку.Однако определенные скважины не были отобраны в определенные даты, поэтому сопоставление возвращает ошибку, а затем сумма также является ошибкой.
Я пытался вложить Sumif "> = 0" с суммой, если не ошибкой, но эти формулы, кажется, не работают, когда ячейки не находятся вместе, как в диапазоне, и являются просто значениями, как в векторе (также пробовал shift, ctrl, ввод безуспешно)).
Прямо сейчас мне нужно вручную удалить лунки "LP #" из основной формулы, чтобы вычислить среднее значение.Бьюсь об заклад, есть способ без VBA для расчета среднего или медианы с помощью формул.
Спасибо!
PS.LP_ # - вектор с датами.Вот как я выбираю правильное значение в нужную дату для каждого параметра (упорядочено одинаково на каждом листе)