Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.misc
Michael Link
 
Posts: n/a
Default Averaging Array Formula

Hi:

The inelegant formula below is an attempt to average values in G10, J10,
M10, and P10 if the cell to the right of each one is greater than 4. (That
is, if the cell to the right is 4 or less, the number to the left needs to be
tossed out of the calculation completely and only the remaining numbers
averaged):

=IF(ISERROR(AVERAGE(IF(H10<=4,0,G10),IF(K10<=4,0,J 10),IF(N10<=4,0,M10),IF(Q10<=4,0,P10))),"",AVERAGE (IF(H10<=4,0,G10),IF(K10<=4,0,J10),IF(N10<=4,0,M10 ),IF(Q10<=4,0,P10)))

As you can see, though, instead of tossing out the number to the left
completely, it just uses a zero instead, which completely screws the average
I need. I've tried substituting double quotes for the zeroes, but of couse
that doesn't work, either.

Any ideas on how this whole thing can be reconfigured as an array formula to
do what I need it to do? I keep getting lost in the syntax and getting
useless results.

Help!

Thanks in advance!

Michael Link
  #2   Report Post  
Posted to microsoft.public.excel.misc
Bernie Deitrick
 
Posts: n/a
Default Averaging Array Formula

Michael,

=SUM(IF(H10=4,G10,0),IF(K10=4,J10,0),IF(N10=4,M 10,0),IF(Q10=4,P10,0))/SUM(IF(H10=4,1,0),IF(K10=4,1,0),IF(N10=4,1,0),I F(N10=4,1,0))

HTH,
Bernie
MS Excel MVP


"Michael Link" wrote in message
...
Hi:

The inelegant formula below is an attempt to average values in G10, J10,
M10, and P10 if the cell to the right of each one is greater than 4. (That
is, if the cell to the right is 4 or less, the number to the left needs to be
tossed out of the calculation completely and only the remaining numbers
averaged):

=IF(ISERROR(AVERAGE(IF(H10<=4,0,G10),IF(K10<=4,0,J 10),IF(N10<=4,0,M10),IF(Q10<=4,0,P10))),"",AVERAGE (IF(H10<=4,0,G10),IF(K10<=4,0,J10),IF(N10<=4,0,M10 ),IF(Q10<=4,0,P10)))

As you can see, though, instead of tossing out the number to the left
completely, it just uses a zero instead, which completely screws the average
I need. I've tried substituting double quotes for the zeroes, but of couse
that doesn't work, either.

Any ideas on how this whole thing can be reconfigured as an array formula to
do what I need it to do? I keep getting lost in the syntax and getting
useless results.

Help!

Thanks in advance!

Michael Link



  #3   Report Post  
Posted to microsoft.public.excel.misc
Bernie Deitrick
 
Posts: n/a
Default Averaging Array Formula

Or the array formula - entered using Ctrl-Shift-Enter

=AVERAGE(IF((MOD(COLUMN(G10:Q10),3)=2)*(G10:Q10)= 4,F10:P10,""))

HTH,
Bernie
MS Excel MVP


"Bernie Deitrick" <deitbe @ consumer dot org wrote in message
...
Michael,

=SUM(IF(H10=4,G10,0),IF(K10=4,J10,0),IF(N10=4,M 10,0),IF(Q10=4,P10,0))/SUM(IF(H10=4,1,0),IF(K10=4,1,0),IF(N10=4,1,0),I F(N10=4,1,0))

HTH,
Bernie
MS Excel MVP


"Michael Link" wrote in message
...
Hi:

The inelegant formula below is an attempt to average values in G10, J10,
M10, and P10 if the cell to the right of each one is greater than 4. (That
is, if the cell to the right is 4 or less, the number to the left needs to be
tossed out of the calculation completely and only the remaining numbers
averaged):

=IF(ISERROR(AVERAGE(IF(H10<=4,0,G10),IF(K10<=4,0,J 10),IF(N10<=4,0,M10),IF(Q10<=4,0,P10))),"",AVERAGE (IF(H10<=4,0,G10),IF(K10<=4,0,J10),IF(N10<=4,0,M10 ),IF(Q10<=4,0,P10)))

As you can see, though, instead of tossing out the number to the left
completely, it just uses a zero instead, which completely screws the average
I need. I've tried substituting double quotes for the zeroes, but of couse
that doesn't work, either.

Any ideas on how this whole thing can be reconfigured as an array formula to
do what I need it to do? I keep getting lost in the syntax and getting
useless results.

Help!

Thanks in advance!

Michael Link





  #4   Report Post  
Posted to microsoft.public.excel.misc
Biff
 
Posts: n/a
Default Averaging Array Formula

Hi!

Try this:

Entered as an array using the key combo of CTRL,SHIFT,ENTER:

=AVERAGE(IF(MOD(COLUMN(G10:Q10),3)=1,IF(MOD(COLUMN (H10:Q10),3)=2,IF(H10:Q104,G10:Q10))))

NB: if all 4 cells to the right are <=4 then you'll get a #DIV/0! error. I
can put an error trap in the formula which will make it longer.

Biff

"Michael Link" wrote in message
...
Hi:

The inelegant formula below is an attempt to average values in G10, J10,
M10, and P10 if the cell to the right of each one is greater than 4. (That
is, if the cell to the right is 4 or less, the number to the left needs to
be
tossed out of the calculation completely and only the remaining numbers
averaged):

=IF(ISERROR(AVERAGE(IF(H10<=4,0,G10),IF(K10<=4,0,J 10),IF(N10<=4,0,M10),IF(Q10<=4,0,P10))),"",AVERAGE (IF(H10<=4,0,G10),IF(K10<=4,0,J10),IF(N10<=4,0,M10 ),IF(Q10<=4,0,P10)))

As you can see, though, instead of tossing out the number to the left
completely, it just uses a zero instead, which completely screws the
average
I need. I've tried substituting double quotes for the zeroes, but of couse
that doesn't work, either.

Any ideas on how this whole thing can be reconfigured as an array formula
to
do what I need it to do? I keep getting lost in the syntax and getting
useless results.

Help!

Thanks in advance!

Michael Link



  #5   Report Post  
Posted to microsoft.public.excel.misc
Biff
 
Posts: n/a
Default Averaging Array Formula

Ooops!

I have the range references messed up!

Should be:

=AVERAGE(IF(MOD(COLUMN(G10:P10),3)=1,IF(MOD(COLUMN (H10:Q10),3)=2,IF(H10:Q104,G10:P10))))

Biff

"Biff" wrote in message
...
Hi!

Try this:

Entered as an array using the key combo of CTRL,SHIFT,ENTER:

=AVERAGE(IF(MOD(COLUMN(G10:Q10),3)=1,IF(MOD(COLUMN (H10:Q10),3)=2,IF(H10:Q104,G10:Q10))))

NB: if all 4 cells to the right are <=4 then you'll get a #DIV/0! error. I
can put an error trap in the formula which will make it longer.

Biff

"Michael Link" wrote in message
...
Hi:

The inelegant formula below is an attempt to average values in G10, J10,
M10, and P10 if the cell to the right of each one is greater than 4.
(That
is, if the cell to the right is 4 or less, the number to the left needs
to be
tossed out of the calculation completely and only the remaining numbers
averaged):

=IF(ISERROR(AVERAGE(IF(H10<=4,0,G10),IF(K10<=4,0,J 10),IF(N10<=4,0,M10),IF(Q10<=4,0,P10))),"",AVERAGE (IF(H10<=4,0,G10),IF(K10<=4,0,J10),IF(N10<=4,0,M10 ),IF(Q10<=4,0,P10)))

As you can see, though, instead of tossing out the number to the left
completely, it just uses a zero instead, which completely screws the
average
I need. I've tried substituting double quotes for the zeroes, but of
couse
that doesn't work, either.

Any ideas on how this whole thing can be reconfigured as an array formula
to
do what I need it to do? I keep getting lost in the syntax and getting
useless results.

Help!

Thanks in advance!

Michael Link







  #6   Report Post  
Posted to microsoft.public.excel.misc
B. R.Ramachandran
 
Posts: n/a
Default Averaging Array Formula

Hi,

Try the following formula [which is also not very elegant(!)]

=SUM(IF(H104,G10,0)+IF(K104,J10,0)+IF(N104,M10, 0)+IF(Q104,P10,0))/SUM(IF(H104,1,0)+IF(K104,1,0)+IF(N104,1,0)+IF(Q 104,1,0))

If none of the values in H10, K10, N10, Q10 is greater than 4, the formula
will return
#DIV/0! error. If you want to avoid that error showing up, try the
following modification.

=IF(SUM(IF(H104,1,0)+IF(K104,1,0)+IF(N104,1,0)+ IF(Q104,1,0))0,SUM(IF(H104,G10,0)+IF(K104,J10, 0)+IF(N104,M10,0)+IF(Q104,P10,0))/SUM(IF(H104,1,0)+IF(K104,1,0)+IF(N104,1,0)+IF(Q 104,1,0)),"")

Regards,
B. R. Ramachandran

"Michael Link" wrote:

Hi:

The inelegant formula below is an attempt to average values in G10, J10,
M10, and P10 if the cell to the right of each one is greater than 4. (That
is, if the cell to the right is 4 or less, the number to the left needs to be
tossed out of the calculation completely and only the remaining numbers
averaged):

=IF(ISERROR(AVERAGE(IF(H10<=4,0,G10),IF(K10<=4,0,J 10),IF(N10<=4,0,M10),IF(Q10<=4,0,P10))),"",AVERAGE (IF(H10<=4,0,G10),IF(K10<=4,0,J10),IF(N10<=4,0,M10 ),IF(Q10<=4,0,P10)))

As you can see, though, instead of tossing out the number to the left
completely, it just uses a zero instead, which completely screws the average
I need. I've tried substituting double quotes for the zeroes, but of couse
that doesn't work, either.

Any ideas on how this whole thing can be reconfigured as an array formula to
do what I need it to do? I keep getting lost in the syntax and getting
useless results.

Help!

Thanks in advance!

Michael Link

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Suppress array formula #NA [email protected] Excel Worksheet Functions 4 November 15th 05 05:17 PM
referencing the value of a cell containing an array formula KR Excel Worksheet Functions 4 July 5th 05 06:15 PM
problem with Array Formula OrdOff Excel Worksheet Functions 2 June 30th 05 04:57 PM
Formula checking multiple worksheets sonic-the-mouse Excel Worksheet Functions 2 June 5th 05 03:28 AM
Match / Vlookup within an Array formula Hari Prasadh Excel Discussion (Misc queries) 3 February 3rd 05 04:37 PM


All times are GMT +1. The time now is 12:14 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"