Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Don
 
Posts: n/a
Default RANK Function Modified?

I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don

  #2   Report Post  
Bob Phillips
 
Posts: n/a
Default

Don,

Assuming you have a standard RANK formula in C, then in D1 add

=(C1*COUNTIF($C$1:$C$11,C1)+COUNTIF($C$1:$C$11,C1)-1)/COUNTIF($C$1:$C$11,C1)

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don



  #3   Report Post  
Vasant Nanavati
 
Posts: n/a
Default

Something like:

=RANK(B2,B$2:B$11,1)+(COUNTIF(B$2:B$11,B2)*(COUNTI F(B$2:B$11,B2)-1)/2)/COUNT
IF(B$2:B$11,B2)

--

Vasant

"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don



  #4   Report Post  
Vasant Nanavati
 
Posts: n/a
Default

Darn, you beat me to it; Bob!

Regards,

Vasant

"Bob Phillips" wrote in message
...
Don,

Assuming you have a standard RANK formula in C, then in D1 add


=(C1*COUNTIF($C$1:$C$11,C1)+COUNTIF($C$1:$C$11,C1)-1)/COUNTIF($C$1:$C$11,C1)

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don





  #5   Report Post  
Vasant Nanavati
 
Posts: n/a
Default

Actually, Bob; yours seems to work differently from mine, so one of us has
misunderstood the OP's requirements! :)

--

Vasant


"Vasant Nanavati" <vasantn *AT* aol *DOT* com wrote in message
...
Darn, you beat me to it; Bob!

Regards,

Vasant

"Bob Phillips" wrote in message
...
Don,

Assuming you have a standard RANK formula in C, then in D1 add



=(C1*COUNTIF($C$1:$C$11,C1)+COUNTIF($C$1:$C$11,C1)-1)/COUNTIF($C$1:$C$11,C1)

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don









  #6   Report Post  
Don
 
Posts: n/a
Default

I'll try both this eveining... it for my fantasy baseball
league comming up...


Thanks to both of you Bob and Vasant. I'll repost and let
you know how I make out.

-----Original Message-----
Something like:

=RANK(B2,B$2:B$11,1)+(COUNTIF(B$2:B$11,B2)*(COUNT IF

(B$2:B$11,B2)-1)/2)/COUNT
IF(B$2:B$11,B2)

--

Vasant

"Don" wrote in

message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have

the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in

this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two

teams
tied, so points might need to be divided amongst three

or
more teams.

Thanks for any insight anyone mihgt be able to

provide....

Thanks,
Don



.

  #7   Report Post  
Bob Phillips
 
Posts: n/a
Default

Yours is right Vasant, I forgot to invert for scores.

Regards

Bob

"Vasant Nanavati" <vasantn *AT* aol *DOT* com wrote in message
...
Actually, Bob; yours seems to work differently from mine, so one of us has
misunderstood the OP's requirements! :)

--

Vasant


"Vasant Nanavati" <vasantn *AT* aol *DOT* com wrote in message
...
Darn, you beat me to it; Bob!

Regards,

Vasant

"Bob Phillips" wrote in message
...
Don,

Assuming you have a standard RANK formula in C, then in D1 add




=(C1*COUNTIF($C$1:$C$11,C1)+COUNTIF($C$1:$C$11,C1)-1)/COUNTIF($C$1:$C$11,C1)

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don









  #8   Report Post  
 
Posts: n/a
Default

Van...

This seems to work great! I tested it using a few
different scenarios. Thank you. I certainly understand
how countif works, but how were you able to come up with
the logic...

I'll try your scenario as soon as I get a chance Bob....


-----Original Message-----
Something like:

=RANK(B2,B$2:B$11,1)+(COUNTIF(B$2:B$11,B2)*(COUNT IF

(B$2:B$11,B2)-1)/2)/COUNT
IF(B$2:B$11,B2)

--

Vasant

"Don" wrote in

message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have

the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in

this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two

teams
tied, so points might need to be divided amongst three

or
more teams.

Thanks for any insight anyone mihgt be able to

provide....

Thanks,
Don



.

  #9   Report Post  
Bob Phillips
 
Posts: n/a
Default

Don't bother :-). Vasant scored it which I failed to do.

Bob


wrote in message
...
Van...

This seems to work great! I tested it using a few
different scenarios. Thank you. I certainly understand
how countif works, but how were you able to come up with
the logic...

I'll try your scenario as soon as I get a chance Bob....


-----Original Message-----
Something like:

=RANK(B2,B$2:B$11,1)+(COUNTIF(B$2:B$11,B2)*(COUNT IF

(B$2:B$11,B2)-1)/2)/COUNT
IF(B$2:B$11,B2)

--

Vasant

"Don" wrote in

message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have

the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in

this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two

teams
tied, so points might need to be divided amongst three

or
more teams.

Thanks for any insight anyone mihgt be able to

provide....

Thanks,
Don



.



  #10   Report Post  
N Harkawat
 
Posts: n/a
Default

On column C type
=RANK(B2,B$2:B$11,1)+IF(1/COUNTIF($B$2:$B$11,B2)<1,1/COUNTIF($B$2:$B$11,B2),0)
will take care of situations where there are more than 2 scores that tie
If there are 3 scores ranked then the above will add 0.333 toeach of them
and so on.


"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don





  #11   Report Post  
Vasant Nanavati
 
Posts: n/a
Default

Unfortunately, if there are 3 scores ranked the same then you would need to
add 1 to each of them (I made the same mistake in my first attempt!).

--

Vasant


"N Harkawat" wrote in message
...
On column C type

=RANK(B2,B$2:B$11,1)+IF(1/COUNTIF($B$2:$B$11,B2)<1,1/COUNTIF($B$2:$B$11,B2),
0)
will take care of situations where there are more than 2 scores that tie
If there are 3 scores ranked then the above will add 0.333 toeach of them
and so on.


"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don





  #12   Report Post  
Daniel.M
 
Posts: n/a
Default

Hi,

Also, this ARRAY formula:

=AVERAGE(COUNTIF(B$2:B$11,"<"&B2)+ROW(INDIRECT("1: "&COUNTIF(B$2:B$11,B2))))

Regards,

Daniel M.

"Don" wrote in message
...
I believe a need a slighly modifed version of the RANK
function.

Here is the scenario....

I have three columns A,B,C with Name, Score and Points.
Points given are based upon ranking. So, if you have the
highest score, you get the most amount of points. The
rank formula in the first relevant row is =RANK
(B2,$b$2:$b$11,1). This works nicely unless there is a
TIE in a score.

If there are 4 participants and a tie for second, the
resulting points(rankings) would be 4, 2, 2, 1. This is
not what I want. I want to distribute all the points
amongst all the tied players, so that each player in this
scenario would receive 2.5 points. I hope I am making
sense here.

There are also two things to keep in mind
(1) The scores will not necessarily be sorted, because
there are many categories to score
(2) Although unlikely, there could be more than two teams
tied, so points might need to be divided amongst three or
more teams.

Thanks for any insight anyone mihgt be able to provide....

Thanks,
Don



  #13   Report Post  
Daniel.M
 
Posts: n/a
Default


=AVERAGE(COUNTIF(B$2:B$11,"<"&B2)+ROW(INDIRECT("1: "&COUNTIF(B$2:B$11,B2))))



Maybe this one (not an ARRAY formula) :

=COUNTIF(B$2:B$11,"<"&B2)+(1+COUNTIF(B$2:B$11,B2))/2

Regards,

Daniel M.


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
Conversion SVC Excel Worksheet Functions 9 February 28th 05 02:29 PM
Rank fx - Fill Down? Steve B Excel Worksheet Functions 1 February 23rd 05 08:28 PM
Trim function doesn't clean out ASCII Code 160 (Space) Ronald Dodge Excel Worksheet Functions 6 January 27th 05 03:48 AM
Sum Function sometimes displays incorrect answer John Westgate Excel Worksheet Functions 4 January 18th 05 12:16 PM
Rank Function carl Excel Worksheet Functions 2 November 15th 04 07:23 PM


All times are GMT +1. The time now is 08:28 AM.

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

About Us

"It's about Microsoft Excel"