An Average that Excludes Zero Values

PRAVEEN KUMAR (MBA (Finance) B.Com.(P))   (3443 Points)

12 January 2010  
Excel allows you to use functions and formulas to analyze your data. One way you can analyze your data is to use the AVERAGE function to find out the average of a range of values; this concept is easy to grasp. What may not be as easy is how you get an average that excludes zero values within the range.
 
 
Let us know how to use the AVERAGE function to determine the average of a range of values. We would like to have the average determined based on the non-zero values in the range, however.
 
 
There are several ways you can approach this problem. The first is to remember how an average is calculated. It is defined as the sum of a range of values divided by the number of items in the range. Thus, you could figure the exclusionary average by simply making sure that the denominator (the number you are dividing by) does not include any zero values. For instance:
 
=SUM(A1:A50)/COUNTIF(A1:A50,"<>0")
This approach uses the COUNTIF function to determine the number of cells in the range (A1:A50) that don't contain zero. If this range contains not only zeros but also blank cells, and you don't want the blank cells figured into the result, then you need to use a more complex formula:
 
=SUM(A1:A50)/(COUNTIF(A1:A50,"<>0")-COUNTBLANK(A1:A50)-
(COUNTA(A1:A50)-COUNT(A1:A50)))
The COUNTIF function counts cells that do not explicitly evaluate to 0, but it will count blank and text cells. The COUNTBLANK term adjusts for the blank cells and the difference between COUNTA and COUNT adjusts the total count for cells that contain text.
 
 
Of course you can also use an array formula to do your calculation:
 
=AVERAGE(IF(A1:A50<>0,A1:A50))
Remember that array formulas need to be entered by using the combination Ctrl+Shift+Enter. This array formula also excludes blanks or cells containing text.