Excel - non vba code - Balance and create 6 Flights based on Player Handicap

Richard2542

Board Regular
Joined
Apr 27, 2017
Messages
102
Office Version
  1. 365
  2. 2013
I have created the Worksheet where Players are grouped by Flight based on their Golf Handicap...heretofore the Flights have been well balanced...the exception is shown in the included screen shot. The problem appears to be created in the E Flight where I have 12 players with the exact same Hcp...any thoughts on how this could be improved. I can manually move the 12 players in question to Flight F and this would better balance the entire Roster, but I would prefer not manually override the calculations, etc. The below screen shot shows the formula I am using (column H) to determine Flights. Row 16 shows the Player distribution by Flight (the unbalanced portion is contained in both E Flight (43 Players) and F Flight (27 Players) when compared to Flight A, B, C and D.

1597513784831.png
 

Excel Facts

Convert text numbers to real numbers
Select a column containing text numbers. Press Alt+D E F to quickly convert text to numbers. Faster than "Convert to Number"
But what is Hcps
It is a numerical measure of the golfer's potential and is used by golfers of varying abilities to compete against each other...the better Players have lower Hcp's.
This value may change on a weekly basis and is not important in solving the above problem. The column that shows the Player Hcp is a variable. Flighting Players is based on Players Hcp's and the number of Flights that may be required for the event...the objective is to closely balance the number of Players per Flight...generally we use 5 Flights on a weekly basis, but for a Tournament we use 6 Flights...so for 200 Players that would represent approximately 33 Players per Flight.
 
Upvote 0
Why not just make it a rule that when the handicaps are the same and will require a spllit of those affected golfers between flights, that it will be done based on their alphabetizede ranking. You might alternate from week to week to reverse the order.. Again, if the rules are the same for all players, the hadicap should balance the odds of turning in a decent score. I understand the email and phone call thing, but they have to learn to play by the rule and not try to intimidate the handicapper. You can stop that garbage by making a rule that if they harass the handicapper they get a full stroke deducted from their handicap. That will reduce your emails and phone calls. You will hot be able to please everybody, no matter how hard you try. I would use the most accurate formula with 2 decimal place for ranking and let the chips fall where they may.
 
Upvote 0
Yes I devoted almost half an hour but didn't understand anything
You're probably missing the example file posted on another forum
Sample

The Handicap is ranked for the 209 players (in this example) and they are placed into one of six Flights, A to F. The wrinkle is that Richard 5422 wants to keep those with the same handicap in the same flight.

With 209 players you want about 35 (209/6) in in each Flight but because 12 players have the same Handicap of 36 it was ranking them into Flight E but then E contained 43 players and F contained 27. Richard5422 manually moved the 12 players into F resulting in E=31 players and F=39 players, so more balanced.

The question can therefore be summarised as follows. With players being assigned a Flight (A to F) based on Handicap (7.22 to 45 with duplicates) how do you assign the Flight to a player while keeping the best balance between number of players in a Flight.
 
Upvote 0
You're probably missing the example file posted on another forum
Sample

The Handicap is ranked for the 209 players (in this example) and they are placed into one of six Flights, A to F. The wrinkle is that Richard 5422 wants to keep those with the same handicap in the same flight.

With 209 players you want about 35 (209/6) in in each Flight but because 12 players have the same Handicap of 36 it was ranking them into Flight E but then E contained 43 players and F contained 27. Richard5422 manually moved the 12 players into F resulting in E=31 players and F=39 players, so more balanced.

The question can therefore be summarised as follows. With players being assigned a Flight (A to F) based on Handicap (7.22 to 45 with duplicates) how do you assign the Flight to a player while keeping the best balance between number of players in a Flight.
Outstanding reply...hopefully, someone has a solution - thanks again
 
Upvote 0
Richard2542,
I'll have to give up on this. I feel there should be some kind of statistical method to better assign the Flights, but I never paid enough attention in that class.

Here's another calculation method but I believe it just moves the challenge around and doesn't resolve it. I've calculated the unique Ranks in column J, counted them in column K then assigned 1 to 6 for the A to F in column L based on reaching the average players per Flight (cell K20) for each player.
This gives Flight counts of 33, 36, 35, 35, 31, 39 instead of 35, 34, 35, 35, 43, 27 but as I said I think a different dataset would show the same kind of challenge.

I wanted to tweak by using the below/above average counts for A to F (cells M23 to E23) in the column L calculation but of course that give a circular reference.

Richard-TEST-5.xlsx
ABCDEFGHIJKLMNOPQR
20FlightFlight Assignment (all Groups)Rank Groups34.8333ABCDEF
21PlayRpt Hcp6 FlightsFlight Rank w/DuplicatesToad Flight01123456
22 AMMERMANN, NORMGOLDB18.7918.79B36B7.2211333635353139
23 ANDERSON, BOBGOLDB22.9622.96B64B7.8711-2-1-10-40
24 ANZIA, RONALDBLUEB23.0023B65B7.8911
25 BAIL, PHILBLUEF38.1938.19F191F9.6821
26 BALOG, JOHNGOLDE36.0036E171F10.4811
27 BARTHOLOMEW, BOBBLUEC26.0426.04C97C10.6611
28 BAUZENBERGER, RICHARDBLUEB22.1522.15B59B11.0711
29 BERGER, DAVEGOLDD30.2830.28D136D11.2711
30 BEVERUNG, BUDGOLDE33.3233.32E160E12.4311
31 BEWALDA, BOBBLUEB21.9521.95B58B12.6611
32 BLANK, DARRELGOLDE32.2532.25E156E13.8611
33 BLATNAK, STEVEGOLDA14.2914.29A13A14.2911
34 BLAZICH, BOBGOLDC25.9025.9C94C14.7911
35 BOESELAGER, JEROMEBLUEA18.3918.39A34B14.8511
Flight and Handicap
Cell Formulas
RangeFormula
K20K20=COUNT(GroupHcp)/6
F22:F35F22=IFERROR(IF(OR(OR(OR(A22="",D22=""),D22=" * "),C22="N"),"",IF(E22="X","",IF($F$16=0,ROUND(D22,0),IF($F$16=1,ROUND(D22,1),IF($F$16=2,ROUND(D22,2),""))))),"")
G22:G35G22=IFERROR(IF(OR($A22="",$F22=""),"",IF($H22/COUNT(GroupHcp)<=0.166,$G$15,IF($H22/COUNT(GroupHcp)<=0.3334,$H$15,IF($H22/COUNT(GroupHcp)<=0.5001,$I$15,IF($H22/COUNT(GroupHcp)<=0.6668,$J$15,IF($H22/COUNT(GroupHcp)<=0.8335,$K$15,$L$15)))))),"")
H22:H35H22=IFERROR(RANK(F22,GroupHcp,1),"")
I22:I35I22=IF(F22="","",MID("ABCDEF",INDEX($L$22:$L$250,MATCH(F22,$J$22:$J$250,0)),1))
J22:J35J22=AGGREGATE(15,6,GroupHcp/(GroupHcp>J21),1)
K22:K35K22=COUNTIF(GroupHcp,J22)
L22:L35L22=MIN(6,IF(SUM($K$22:$K22)>$K$20*L21,L21+1,L21))
M22:R22M22=SUMIFS($K$22:$K$198,$L$22:$L$198,M21)
M23:R23M23=SUM($M$22:M22)-(M21*$K$20)
Cells with Conditional Formatting
CellConditionCell FormatStop If True
H27:H250Cell ValueduplicatestextNO
H22:H26Cell ValueduplicatestextNO
D27:D250Cell Value=" * "textNO
C27:C250Cell Value="N"textNO
A27:A250Cell ValueduplicatestextNO
D22:D26Cell Value=" * "textNO
C22:C26Cell Value="N"textNO
A22:A26Cell ValueduplicatestextNO
 
Upvote 0
Toadstool...Thank you sooooooo much. I'm going to take a close look at this - you may have a workable solution, however, I have Round 2 of the Tournament tomorrow and Wednesday, so it will be a few days before I can begin. You have been a great ally in this undertaking - I'll let you know and thanks again.
 
Upvote 0

Forum statistics

Threads
1,214,943
Messages
6,122,369
Members
449,080
Latest member
Armadillos

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top