SOLVED

AVERAGEIF criterion is itself a conditional

Copper Contributor

I suspect this has been answered before, though  I searched and couldn't find it.   I want to find the average value of a column of numbers, but ONLY of the number exceeds the value of the cell in an adjacent column.  For example, from the following table...

 

 AB
11.250.38
22.240.43
31.680.57
41.750.48
51.880.62
61.420.32
70.380.51
80.490.61
90.120.18
100.790.30

 

 

...I want to find the average of the values in column A if and only if that value exceeds its adjacent value in column B.    These A values are in bold font above.  The excel function =AVERAGEIF(A1:A10,">"&B1) isn't correct, of course.  But what is the correct criterion for such a case?

4 Replies
best response confirmed by sroper2001 (Copper Contributor)
Solution

@sroper2001 

=AVERAGE(IF(A1:A10>B1:B10,A1:A10))

You can try this formula. Enter the formula with ctrl+shift+enter if you don't work with Office365 or Excel 2021.

averageif.JPG 

Yes! Perfect!! A million thanks! I assume will also work with SUMIF when I want to sum those numbers instead of averaging them. You've made my day!

@sroper2001 

Currently, the best formula would be

= AVERAGE(
    FILTER(A, A>B)
  )

where A and B are names given to your variables.

= AVERAGE(
    IF(A>B,A)
  )

would also work.

Yup, also quite good. Introduced me to the FILTER function! Thanks, Peter!!
1 best response

Accepted Solutions
best response confirmed by sroper2001 (Copper Contributor)
Solution

@sroper2001 

=AVERAGE(IF(A1:A10>B1:B10,A1:A10))

You can try this formula. Enter the formula with ctrl+shift+enter if you don't work with Office365 or Excel 2021.

averageif.JPG 

View solution in original post