Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]() I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#2
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
=IF(COUNTIF(A$1:A$8,A1)=1,RANK(A1,A$1:A$8,1),RANK( A1,A$1:A$8,1)+0.5)
"sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#3
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Try this formula...
=(2*RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1))/2 changing the ranges to match your actual conditions, of course. -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#4
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Actually, this formula is a little simpler...
=RANK(K2,K$1:K$8,1)+(COUNTIF(K$1:K$8,K2)1)/2 -- Rick (MVP - Excel) "Rick Rothstein" wrote in message ... Try this formula... =(2*RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1))/2 changing the ranges to match your actual conditions, of course. -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#5
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Rick,
I'm aware the OP said ties get 1/2 the value indicating no 3 way ties but may this mod to make it more generic =RANK(L1,L$1:L$8,1)+ROUND((COUNTIF(L$1:L$8,L1)1)/COUNTIF(L$1:L$8,L1),2) Mike "Rick Rothstein" wrote: Actually, this formula is a little simpler... =RANK(K2,K$1:K$8,1)+(COUNTIF(K$1:K$8,K2)1)/2 -- Rick (MVP - Excel) "Rick Rothstein" wrote in message ... Try this formula... =(2*RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1))/2 changing the ranges to match your actual conditions, of course. -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#6
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Hi,
One way would be =RANK(K1,$K$1:$K$8,1)+(COUNT($K$1:$K$8)+1-RANK(K1,$K$1:$K$8,0)-RANK(K1,$K$1:$K$8,1))/2 Patrik On Fri, 23 Jan 2009 19:11:48 +0000, sherbrooke wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. |
#7
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Actually, of the formulas submitted so far (mine included), none of them
account for 3 or more way ties. This formula does... =RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1)/COUNTIF(K$1:K$8,K1) -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#8
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Apologies I didn't see you'd posted this when I responded to your other post,
still think it's better with round to get rid of reccuring decimals Mike "Rick Rothstein" wrote: Actually, of the formulas submitted so far (mine included), none of them account for 3 or more way ties. This formula does... =RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1)/COUNTIF(K$1:K$8,K1) -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#9
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
No apologies necessary. I posted this response separately because I thought
if I went 3 posting levels deep, that the OP might not read that far down.<g As for including the ROUND function, I figured the OP would use Cell Format to restrict decimals if he wanted to do that (Custom Format of 0.0# for 2 decimal places maximum maybe). -- Rick (MVP - Excel) "Mike H" wrote in message ... Apologies I didn't see you'd posted this when I responded to your other post, still think it's better with round to get rid of reccuring decimals Mike "Rick Rothstein" wrote: Actually, of the formulas submitted so far (mine included), none of them account for 3 or more way ties. This formula does... =RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1)/COUNTIF(K$1:K$8,K1) -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#10
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Hi,
The format approach was my first thought but then none-ties end up with a ..00 decimal. Maybe it's me being picky:) Mike "Rick Rothstein" wrote: No apologies necessary. I posted this response separately because I thought if I went 3 posting levels deep, that the OP might not read that far down.<g As for including the ROUND function, I figured the OP would use Cell Format to restrict decimals if he wanted to do that (Custom Format of 0.0# for 2 decimal places maximum maybe). -- Rick (MVP - Excel) "Mike H" wrote in message ... Apologies I didn't see you'd posted this when I responded to your other post, still think it's better with round to get rid of reccuring decimals Mike "Rick Rothstein" wrote: Actually, of the formulas submitted so far (mine included), none of them account for 3 or more way ties. This formula does... =RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1)/COUNTIF(K$1:K$8,K1) -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#11
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Just one zero after the decimal point with my custom format pattern <g, but
I do see your point. -- Rick (MVP - Excel) "Mike H" wrote in message ... Hi, The format approach was my first thought but then none-ties end up with a .00 decimal. Maybe it's me being picky:) Mike "Rick Rothstein" wrote: No apologies necessary. I posted this response separately because I thought if I went 3 posting levels deep, that the OP might not read that far down.<g As for including the ROUND function, I figured the OP would use Cell Format to restrict decimals if he wanted to do that (Custom Format of 0.0# for 2 decimal places maximum maybe). -- Rick (MVP - Excel) "Mike H" wrote in message ... Apologies I didn't see you'd posted this when I responded to your other post, still think it's better with round to get rid of reccuring decimals Mike "Rick Rothstein" wrote: Actually, of the formulas submitted so far (mine included), none of them account for 3 or more way ties. This formula does... =RANK(K1,K$1:K$8,1)+(COUNTIF(K$1:K$8,K1)1)/COUNTIF(K$1:K$8,K1) -- Rick (MVP - Excel) "sherbrooke" wrote in message ... I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#12
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]() assuming that your data start in row 1, try this formula in L1 and copy down =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Does this do what you what? -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#13
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
forgot to mention that this is an array formula, after placing the formula,
press Ctrl, Shift and Enter all at once to enter, you will see curly brackets wrap around the formula in the formula bar. HTH -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "xlmate" wrote: assuming that your data start in row 1, try this formula in L1 and copy down =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Does this do what you what? -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#14
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Hi,
Nice approach to the problem. How about this to make it cope with 3 way ties =SUM(1*(L1=$L$1:$L$8))-ROUND((SUM(1*(L1=$L$1:$L$8))-1)/COUNTIF(L$1:L$8,L1),2) Mike "xlmate" wrote: forgot to mention that this is an array formula, after placing the formula, press Ctrl, Shift and Enter all at once to enter, you will see curly brackets wrap around the formula in the formula bar. HTH -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "xlmate" wrote: assuming that your data start in row 1, try this formula in L1 and copy down =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Does this do what you what? -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#15
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Hi Mike
Simply excellent ;) -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "Mike H" wrote: Hi, Nice approach to the problem. How about this to make it cope with 3 way ties =SUM(1*(L1=$L$1:$L$8))-ROUND((SUM(1*(L1=$L$1:$L$8))-1)/COUNTIF(L$1:L$8,L1),2) Mike "xlmate" wrote: forgot to mention that this is an array formula, after placing the formula, press Ctrl, Shift and Enter all at once to enter, you will see curly brackets wrap around the formula in the formula bar. HTH -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "xlmate" wrote: assuming that your data start in row 1, try this formula in L1 and copy down =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Does this do what you what? -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#16
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
I can't get your formula to work for 3 way ties :-(
I came up with this formula that I hope works for n-way ties. =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Lars-Åke On Fri, 23 Jan 2009 12:38:11 -0800, Mike H wrote: Hi, Nice approach to the problem. How about this to make it cope with 3 way ties =SUM(1*(L1=$L$1:$L$8))-ROUND((SUM(1*(L1=$L$1:$L$8))-1)/COUNTIF(L$1:L$8,L1),2) Mike "xlmate" wrote: forgot to mention that this is an array formula, after placing the formula, press Ctrl, Shift and Enter all at once to enter, you will see curly brackets wrap around the formula in the formula bar. HTH -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "xlmate" wrote: assuming that your data start in row 1, try this formula in L1 and copy down =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Does this do what you what? -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
#17
![]()
Posted to microsoft.public.excel.misc
|
|||
|
|||
![]()
Lars
I almost hesitate to mention it given some of the stuff you have posted but you did array enter it didn't you? the formula also works for n way ties and adds a decimal for those ties. for example a 3 way tie returns n.33 & a 4 way n.25 I think you need to look at your formula again. I get no decimals for 3 way ties and n.5 for 4 way ties. Mike "Lars-Ã…ke Aspelin" wrote: I can't get your formula to work for 3 way ties :-( I came up with this formula that I hope works for n-way ties. =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Lars-Ã…ke On Fri, 23 Jan 2009 12:38:11 -0800, Mike H wrote: Hi, Nice approach to the problem. How about this to make it cope with 3 way ties =SUM(1*(L1=$L$1:$L$8))-ROUND((SUM(1*(L1=$L$1:$L$8))-1)/COUNTIF(L$1:L$8,L1),2) Mike "xlmate" wrote: forgot to mention that this is an array formula, after placing the formula, press Ctrl, Shift and Enter all at once to enter, you will see curly brackets wrap around the formula in the formula bar. HTH -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "xlmate" wrote: assuming that your data start in row 1, try this formula in L1 and copy down =SUM(1*(L1=$L$1:$L$8))-(SUM(1*(L1=$L$1:$L$8))-1)/2 Does this do what you what? -- Your feedback is very much appreciate, pls click on the Yes button below if this posting is helpful. Thank You cheers, francis "sherbrooke" wrote: I have rows of figures over a number of columns, starting at column A, with totals for each row in column K. I then want to allocate values from 1 to 8 to each of the rows, in column L, with 8 to the highest total and 1 to the lowest total, if 2 rows are the same total they each receive half of the combined figures, as per the examples below:- (This is a very simple example of what I use, in reality there are some 24 columns and 16 rows, where the values are from 1 to 16 rather than 1 to 8) ABCDE FG H I J K L Row 1 = 5 6 6 2 4 2 4 3 2 6 = 40 -- 8 Row 2 = 5 3 3 6 0 2 0 3 2 4 = 28 -- 2 Row 3 = 1 0 0 4 2 6 6 0 6 4 = 29 -- 3.5 Row 4 = 1 3 3 0 6 2 2 6 2 6 = 31 -- 5.5 Row 5 = 1 0 0 4 2 4 2 3 4 0 = 20 -- 1 Row 6 = 1 3 3 0 6 4 6 3 4 2 = 32 -- 7 Row 7 = 5 6 6 2 4 0 0 6 0 2 = 31 -- 5.5 Row 8 - 5 3 3 6 0 4 4 0 4 0 = 29 -- 3.5 What I require is a formula which will automatically insert the appropriate value, 1 to 8 in the example above. I would be most grateful for any suggestions. -- JohnD |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Help with a formula required please | Excel Discussion (Misc queries) | |||
Excel 2002 Formula: Urgent Conditional Formula Required Right Away - if possible | Excel Discussion (Misc queries) | |||
Formula Help required | Excel Discussion (Misc queries) | |||
Formula required | Excel Discussion (Misc queries) | |||
FORMULA REQUIRED | Excel Discussion (Misc queries) |