View Single Post
  #8   Report Post  
Posted to microsoft.public.excel.misc
Domenic[_2_] Domenic[_2_] is offline
external usenet poster
 
Posts: 265
Default how to sum 'n' largest values *not* in an array?

For the X-counts...

Assumptions:

B2, D2, F2, H2, and J2 contain the point values

C2, E2, G2, I2, and K2 contain the corresponding X-counts

The sum of the X-counts does not exceed three digits in length

Formula:

=RIGHT(SUM(LARGE(IF(MOD(COLUMN(B2:J2)-COLUMN(B2),2)=0,B2:J2+C2:K2/1000),{
1,2,3})),3)+0

....confirmed with CONTROL+SHIFT+ENTER.

--
Domenic
http://www.xl-central.com

In article
,
memilanuk wrote:

On May 10, 2:14*pm, Domenic wrote:
How do I sum the high 3 values from '585','592','595','599','0' when
they aren't in adjacent cells which I can give as an array value?


Assuming that B2, D2, F2, H2, and J2 contain the five values, try...

=SUM(LARGE((B2,D2,F2,H2,J2),{1,2,3}))


Domenic,

That worked pretty well; I had thought I had to enter the values for
an array by highlighting and doing the Ctrl+Shift+Enter thing to get
the curly braces ({ }) but not so this time. Slick!

Now... for an another sticking point: now that I have the sum of the
high 3 out of 5 scores in terms of points... what about the X-counts?
I mean, I know now the aggregate point value, but how do I add the X-
counts that go with those particular scores - which may or may not be
the highest ones (its entirely possible to win by points but have a
low X-count). An example might be something like 585-20X, 592-20X,
595-30X, 599-27X, 591-21X. Putting it in terms of what I'd do looking
at it by 'eye', I'd find the top three scores (which we did using large
() ), and then bring the corresponding X-count values along with the
point values, add up all the points and all the Xs for each competitor
and then rank each person by points, then by X count. After that, the
tie-breaking rules get kind of obscure - goes back to who dropped a
point last, which involves going through the score cards that were
turned in, shot by shot. If it comes down to that (fairly rarely), I
think we're going to be doing that by hand anyways.

I'm thinking perhaps setting up some hidden cells - 6 columns, two
(points & Xs) for each of their 'high 3', and fill them with the
appropriate values using '=large((b4,d4,e4,f4,h4,i4)),1)' for the
first point value, and then find someway to reference the cell
immediately to the right of the cell that had the large value to copy
the X count over. large() seems to pull the cell value, but not the
cell address, so I'm not sure that will work. Any other ideas?

TIA,

Monte