364 Replies to “League Fixtures Generator”

  1. Greetings,

    please can someone help ??

    i need to generate fixtures for a league that has 3 sections of 12 teams; i have very fussy teams in my league and they all insist on a weekly home and away rotation.

    I have tried the links above, but there always seems to be at least 2 home or away games on the bounce. Does anybody please know a way to generate these fixtures?

    any help greatly appreciatted

    many thanks.

  2. Hi Kevin,

    I think your teams are going to have to become less fussy. There’s no way to achieve this that I know of.

  3. Thanks Thomas,

    i suspected so, just needed confirmation from someone else.

    I appreciate you taking the trouble to reply,

    cheers

    kevin.

  4. Hello, iam spanish, sorry abiut my english…
    This is a great code!!Iam trying to convert it to Visual Basic, but it´s too difficult, i have made some.
    If someone could help, we could finish it and put here the code too.

  5. Hi mahoni,

    You might be best off copying the original algorithm into VB rather than trying to convert my code.

    http://www.barrychessclub.org.uk/berger2001.htm

    Hope that helps,

    Tom

  6. Bufffff, I have bee trying but it´s all in english…
    I think that i am going to let it as imposible because i can´t find it anywhere else!!!
    Thank you!!!!!!!!!!!!!

  7. Your code is good and clean but if anyone is just looking for a quick fixture list and not interested in the code this site offers the best fixture list generation around:

    http://www.fixturelist.com/createalist1.php

    C.

  8. That is a little more user-friendly than my fixture generator which is just bare bones – http://bluebones.net/fixtures.php

    However, it only supports 8-32 teams and teams can have three home games (or more?) in a row. So on balance I prefer mine! Perhaps I ought to dress mine up a bit nicer.

  9. Excellent resource but I need to calculate for one extra level:

    Golf league comprising 40 players playing as pairs (different partner each week).

    40 players each playing with a different partner each week. I can use your system to generate 39 different pairings per player.

    However each pair needs to play against another pair each fixture and I need to try and minimise the number of times each player plays against the same opponent. The system will ensure they will never play against the same pair of opponents, but how do I ensure the number of times they play against the same opponent is kept to a minimum (of two?).

  10. Hi Martin,

    I think you’ve stumbled upon a variation of the “Social Golfer Problem”. This is an unsolved problem in mathemtaics, although solutions for some particular instances have been produced.

    You can read a bit more at

    http://mathworld.wolfram.com/SocialGolferProblem.html

    and see some known results at

    http://www.cs.brown.edu/people/sello/uniques.html

  11. Hi, this code looks really good, however i am struggling to think of a easy method of making the program to mirror the fixtures, i would be most grateful if you could tell me the solution,

    Many Thanks

  12. You just need to loop through the rounds in the other direction. It would be long these lines:

        for ($i = sizeof($rounds) - 1; $i >= 0; $i--) {
            foreach ($rounds[$i] as $r) {
                print reverse_ha($r) . "<br />"; 
            }
            print "<br />";
        }
        print "<br />";
     

    You’d have to define reverse_ha to flip either side of the ” v ” (a small lesson in the fact that strings are not good data structures!)

  13. First of all great code !
    Its nearly perfect.
    If someone could implement the reverse fixtures it would be complete.

    I tried to reverse the line
    $rounds[$round][$match] = ($home + 1) . ” v ” . ($away + 1);
    to
    $rounds[$round][$match] = ($away + 1) . ” v ” . ($home + 1);

    and this does print the reverse fixtures, but I am a newbie to php and struggling to make it do the whole lot together.
    Please help !!!!
    Many thanks.

  14. OK, I added a bit of code to make it do the second half of the season or tournament, too. I’m not sure it adds to the clarity but it makes some things easier. The (far from perfect) code I used was:

        print "

    Second half is mirror of first half

    "; $round_counter = sizeof($rounds) + 1; for ($i = sizeof($rounds) - 1; $i >= 0; $i--) { print "

    Round " . $round_counter . "

    \n"; $round_counter += 1; foreach ($rounds[$i] as $r) { print flip($r) . "
    "; } print "
    "; }

    You can still get the latest source code from http://bluebones.net/fixtures.txt

  15. Hi David

    I know absolutely nothing about computer codes but have found your generator nice and simple to use, just like me. I have been using it for a couple of years and now even easier since you have put the mirror image in, though it wasn’t all that difficult to do for myself.

    Whay would be really useful though would be an option to input team names so that instead of you code reeling out a numbered schedule it would actually print out the fixture list. I’m sure lots of people especially computer illiterates like myself would find this dead helpful and most of time saving, especially when like myself you have multiple divisions to compile fixture lists for.

    Go on give a go! Respect to you if you can.

    Many thanks, Matt

  16. Whoops, its Thomas David not just David, sorry told you I was simple please still try anyway

    Matt

  17. OK Matt, I’ve had this request a few times now so I’ve updated the fixtures generator to optionally allow you to enter team names instead of the number of teams.

  18. Absolutely brilliant site mate – as someone who maintains a league I know that you often get more queries than praise so I think you should give yourself a good pat on the back.

    Added this to my favourites now too.

  19. i know this mite be a pain in the neck but i generated a 16 team fixture for a darts leauge and there are 3 teams that can’t be home at the same time and my head is pounding at the moment is there anyway you could help me by giving me 3 teams that never play at home together.
    thanks for any reply
    if not i will figure it out…
    … i hope

  20. Hi Craig,

    It’s a hard problem, I’m afraid. I don’t know any algorithmic way to turn out a fixture list like that. I’d have to just tinker by hand like you I’m afraid!

  21. Hi, This solution is great!
    it certainly saves a lot of time, our problem is this.
    40 venues of a pool league, 14 teams per division, 5 divisions and many teams table sharing, it gets worse, the table sharing isnt always in the same division, then we have venues that have multiple tables and teams and want half home half away every week, along with table sharing…..:)
    so although you have saved me many many hours, i feel our ultimate solution will never exist
    wouldnt it be nice though 😉

  22. A couple of things I would change. Rounds 1-9 should be followed by rounds 18 back down to round 10 (1-9 then 18,17,16,15,14,13,12,11,10). Also is it possible to have the first 2 rounds of a season having every team play at home and away?

  23. A couple of things I would change. Rounds 1-9 should be followed by rounds 18 back down to round 10 (1-9 then 18,17,16,15,14,13,12,11,10)…

    A quick method is to change the line which is.
    for ($i = sizeof($rounds) – 1; $i >= 0; $i–) {
    to
    for ($i = 0; $i

  24. Sorry Ben I think WordPress ate your code.

    You’re talking about a league for 19 teams? Would your change also improve things for 4 teams, or 34? If so, I’d be keen to see the code!

    Thanks, Tom

  25. I am desperately trying to find a way to organise the following fixtures…. any guidance?

    We have 7 teams who play in groups of 3 (matches are short so by playing in groups of 3, they can play 2 matches each date i.e. A v B, B v C, C v A) – everyone should play each other twice over the season i.e. 12 games each in total.

    The byes are confusing me… does your program cover these options..

    I am a volunteer sports organiser NOT a programer so any help gratefully received!!

  26. Interesting problem Cara! I don’t think you can use the existing code but I think I have found an answer for you.

    The original algorithm works by laying out the teams around a two-column grid then rotating all of them but one while leaving the remaining team fixed in position. If we apply that principle to 3 teams instead of two then we need a grid with three columns. For instance, for 12 teams it snakes up and down like this:

    1   8    9
    2   7   10
    3   6   11
    4   5   12
    

    In this example the groups would be (1 8 9), (2 7 10), (3 6 11), (4 5 12) for the first round of matches.

    So then the next arrangement would be (leaving team 1 fixed in place but rotating the rest):

    1   9   10
    3   8   11
    4   7   12
    5   6     2
    

    For six teams we only need two rows in our grid (still with three columns). We leave the 1 fixed in position and rotate the rest:

    1   4   5
    2   3   6
    
    1   5   6
    3   4   2
    
    1   6   2
    4   5   3
    
    1   2   3
    5   6   4
    
    1   3   4
    6   2   5
    

    And that’s the complete set of fixtures for six teams.

    For seven teams we have the added complication that one team must “sit out” each round. We represent this but having a fourth column in the final row of the table. Whichever team is in that spot does not play that round.

    The rounds for seven teams then become:

    1   4   5
    2   3   6   (7)
    
    
    1   5   6
    3   4   7   (2)
    
    1   6   7
    4   5   2   (3)
    
    1   7   2
    5   6   3   (4)
    
    1   2   3
    6   7   4   (5)
    
    1   3   4
    7   2   5   (6)
    

    This set does not include a round where team 1 sits out, though. By a process of elimination that round looks like this:

    2   4   6
    3   5   7   (1)
    

    I think that’s right!

    You may want to swap around the order of these rounds to balance out when teams play each other. I haven’t looked at how even that is distributed.

    Good luck with the league!

  27. hi, the code i was trying to post can be found on
    http://www.elyttl.org/upload/fixture.phps
    and the php file looked at
    http://www.elyttl.org/upload/fixture.phps

    i have changed some features to make it work for my needs, new features include dates and free weeks.

  28. second one was meant to be .php remove the s at the end,

    also i changed the second mirror play order

  29. Hi, thanks for this little beauty of a programme. It has certainly helped sorting my fixture list out. Our league will be increasing from 6 to 8 teams next season and I wondered if there is any way the generator could prevent particular teams playing their matches at the same time? i.e. I entered the 8 team names and one team always come out first in each round, as our matches kick-off at 9.30am, 10.30am and 11.30am I was hoping that each team would end up with approximately the same amount of kick-off times.
    But don’t bust a gut, I’m grateful to have the fixtures organised with 10seconds of entering the team names!
    Thanks again

  30. Hello

    Just took over as fixture Sec….. i have 3 Divisions of 16 teams starting in August (11th as its football)… can you help..tried the system above and got 17 teams fixtures, when i only put 16 teams in ? also some of the teams share a pitch is there a programme that will allow me to do fixtures but make sure these do not clash … thanks in advance? and sorry to be a pain!

  31. Hi Gary,

    I guess that perhaps you left a trailing carriage return in the teams box and the program mistakenly thought there was a team there with no name. I’ve changed the code so that won’t cause it to flip out and add an extra team from now on.

    The “complementary” teams that don’t ever play at home at the same time for 16 teams are 1 and 9, 2 and 10, 3 and 11, 4 and 12, 5 and 13, 6 and 14, 7 and 15, and 8 and 16 (I think).

    Hope that helps.

  32. Very neat. An issue I have is with an odd number of teams. Because the second half is a mirror of the first half, one team misses two weeks in the middle of the season. Would it be neater to skip the first repeat (i.e. the final set of the first half) and place that set at the end of the second half? The trade-off, of course, is a repetion of home or away fixtures but I feel this is preferable. Trivial example with three teams:

    1 bye
    2v3
    3 bye
    1v2
    2 bye
    3v1 (all as per your existing program)
    
    Current     Suggested
    2 bye        3 bye
    1v3           2v1
    3 bye        1 bye
    2v1           3v2
    1 bye        2 bye
    3v2           1v3
    

    NICK

  33. Is there any way I can have to confrences of 8 teams. I want to make it so each team in the same confrence plays each other twice and the 8 teams in the other confrence once. Can you have a look for me please?

  34. Nick – That double-skip in the middle when there is an odd number of teams is definitely not pleasing. Perhaps the solution is not to use the mirror image for the second half but rather to just repeat the same weeks with home and away swapped?

    Josh – That’s not something this program can do right now. I’ll try and have a look at it when I get a chance. You could use the existing program to generate the intra-conference games for now.

  35. Hi Thomas,

    How would I go about adding an insert table row into this script?

    I want the fixtures to be added into my table.

    Home_Team | Away_Team is the format. Thanks!

  36. Hi Dan,

    You’d need to replace (or augment) the print statements with some SQL stuff. Alternatively if this is a one-off you could transform the output into SQL statements with a few “search and replace”s. There’s lots of options but this code is more demo standard than beautiful. If you’re going to build a proper reusable program with it then it definitely needs cleaning up! I never knew so many people were going to use it else I’d have done it properly in the first place!

  37. Fantastic format. Saved me a couple of night’s with a committee!! thanks.

    Your bloods worth bottling.

  38. I need to generate a Sunday league fixture list for ten teams, team one cannot play home on the first and third sundays in the month, teams two and nine use the same venue so both cannot be home on any given date, any suggestions

  39. Hi Derek,

    the fixtures generated by this program have the “complementary teams” feature where some teams never play at home at the same time as others. The teams that have this feature are 1 and (n/2 + 1), 2 and (n/2 + 2), etc. where n is the total number of teams.

    So my suggestion is to generate the fixtures using this system with the complmentary teams in the right “slots”. Then chop and change the fixtures around until your other constraint is satisfied. Hope that helps!

  40. Thank you for the BEST fixture compiling tool I have ever come across. Simple to use and just brilliant. Can say no more higher praise than this. The complementary teams pairing facility solved about 4 of the problems I was having instantly. Thanks again!! Best regards.

  41. I am currently creating fixture lists in Word. By applying the Search/Replace function in Word one can get a complete fixture list after a few keyboard clicks.
    The following example is a fixture list for a league with two divisions – one with 10 clubs and one with 12 clubs. Clubs with the same capital letter but different numbers (1 or 2) are always neighbour clubs (never playing at home in the same league round), and this applies both within a division and between the divisions.
    If anyone is interested in mt Word fixture sheets just email me and I’ll send them (free of charge, of course).
    Here’s the example (if I can copy it into this message field in completion):

    ROUND 01	CLUB A1	CLUB C1		TEAM A1	TEAM C1
    ROUND 01	CLUB B2	CLUB D2		TEAM B2	TEAM D2
    ROUND 01	CLUB C2	CLUB A2		TEAM C2	TEAM A2
    ROUND 01	CLUB D1	CLUB B1		TEAM D1	TEAM B1
    ROUND 01	CLUB E2	CLUB F2		TEAM E2	TEAM E1
    ROUND 01	CLUB F1	CLUB E1			
    					
    ROUND 02	CLUB A2	CLUB B2		TEAM A2	TEAM B2
    ROUND 02	CLUB B1	CLUB A1		TEAM B1	TEAM A1
    ROUND 02	CLUB C1	CLUB F1		TEAM C1	TEAM C2
    ROUND 02	CLUB D2	CLUB E2		TEAM D2	TEAM E2
    ROUND 02	CLUB E1	CLUB D1		TEAM E1	TEAM D1
    ROUND 02	CLUB F2	CLUB C2			
    					
    ROUND 03	CLUB A1	CLUB E1		TEAM A1	TEAM E1
    ROUND 03	CLUB B2	CLUB F2		TEAM B2	TEAM D1
    ROUND 03	CLUB C1	CLUB B1		TEAM C1	TEAM B1
    ROUND 03	CLUB D2	CLUB A2		TEAM D2	TEAM A2
    ROUND 03	CLUB E2	CLUB C2		TEAM E2	TEAM C2
    ROUND 03	CLUB F1	CLUB D1			
    					
    ROUND 04	CLUB A2	CLUB E2		TEAM A2	TEAM E2
    ROUND 04	CLUB B1	CLUB F1		TEAM B1	TEAM D2
    ROUND 04	CLUB C2	CLUB B2		TEAM C2	TEAM B2
    ROUND 04	CLUB D1	CLUB A1		TEAM D1	TEAM A1
    ROUND 04	CLUB E1	CLUB C1		TEAM E1	TEAM C1
    ROUND 04	CLUB F2	CLUB D2			
    					
    ROUND 05	CLUB A2	CLUB F2		TEAM A2	TEAM A1
    ROUND 05	CLUB B1	CLUB E1		TEAM B1	TEAM E1
    ROUND 05	CLUB C1	CLUB D1		TEAM C1	TEAM D1
    ROUND 05	CLUB D2	CLUB C2		TEAM D2	TEAM C2
    ROUND 05	CLUB E2	CLUB B2		TEAM E2	TEAM B2
    ROUND 05	CLUB F1	CLUB A1			
    					
    ROUND 06	CLUB A1	CLUB F1		TEAM A1	TEAM A2
    ROUND 06	CLUB B2	CLUB E2		TEAM B2	TEAM E2
    ROUND 06	CLUB C2	CLUB D2		TEAM C2	TEAM D2
    ROUND 06	CLUB D1	CLUB C1		TEAM D1	TEAM C1
    ROUND 06	CLUB E1	CLUB B1		TEAM E1	TEAM B1
    ROUND 06	CLUB F2	CLUB A2			
    					
    ROUND 07	CLUB A1	CLUB F2			
    ROUND 07	CLUB B1	CLUB E2			
    ROUND 07	CLUB C1	CLUB D2			
    ROUND 07	CLUB D1	CLUB C2			
    ROUND 07	CLUB E1	CLUB B2			
    ROUND 07	CLUB F1	CLUB A2			
    					
    ROUND 08	CLUB A2	CLUB E1			
    ROUND 08	CLUB B2	CLUB D1			
    ROUND 08	CLUB C2	CLUB C1			
    ROUND 08	CLUB D2	CLUB B1			
    ROUND 08	CLUB E2	CLUB A1			
    ROUND 08	CLUB F2	CLUB F1			
    					
    ROUND 09	CLUB A1	CLUB D2		TEAM A1	TEAM D2
    ROUND 09	CLUB B1	CLUB C2		TEAM B1	TEAM C2
    ROUND 09	CLUB C1	CLUB B2		TEAM C1	TEAM B2
    ROUND 09	CLUB D1	CLUB A2		TEAM D1	TEAM E2
    ROUND 09	CLUB E1	CLUB F2		TEAM E1	TEAM A2
    ROUND 09	CLUB F1	CLUB E2			
    					
    ROUND 10	CLUB A2	CLUB C1		TEAM A2	TEAM D1
    ROUND 10	CLUB B2	CLUB B1		TEAM B2	TEAM B1
    ROUND 10	CLUB C2	CLUB A1		TEAM C2	TEAM A1
    ROUND 10	CLUB D2	CLUB F1		TEAM D2	TEAM E1
    ROUND 10	CLUB E2	CLUB E1		TEAM E2	TEAM C1
    ROUND 10	CLUB F2	CLUB D1			
    					
    ROUND 11	CLUB A1	CLUB B2		TEAM A1	TEAM B2
    ROUND 11	CLUB B1	CLUB A2		TEAM B1	TEAM E2
    ROUND 11	CLUB C1	CLUB F2		TEAM C1	TEAM A2
    ROUND 11	CLUB D1	CLUB E2		TEAM D1	TEAM D2
    ROUND 11	CLUB E1	CLUB D2		TEAM E1	TEAM C2
    ROUND 11	CLUB F1	CLUB C2			
    					
    ROUND 12	CLUB A2	CLUB A1		TEAM A2	TEAM B1
    ROUND 12	CLUB B2	CLUB F1		TEAM B2	TEAM E1
    ROUND 12	CLUB C2	CLUB E1		TEAM C2	TEAM D1
    ROUND 12	CLUB D2	CLUB D1		TEAM D2	TEAM C1
    ROUND 12	CLUB E2	CLUB C1		TEAM E2	TEAM A1
    ROUND 12	CLUB F2	CLUB B1			
    					
    ROUND 13	CLUB A2	CLUB C2		TEAM A2	TEAM C2
    ROUND 13	CLUB B1	CLUB D1		TEAM B1	TEAM D1
    ROUND 13	CLUB C1	CLUB A1		TEAM C1	TEAM A1
    ROUND 13	CLUB D2	CLUB B2		TEAM D2	TEAM B2
    ROUND 13	CLUB E1	CLUB F1		TEAM E1	TEAM E2
    ROUND 13	CLUB F2	CLUB E2			
    					
    ROUND 14	CLUB A1	CLUB B1		TEAM A1	TEAM B1
    ROUND 14	CLUB B2	CLUB A2		TEAM B2	TEAM A2
    ROUND 14	CLUB C2	CLUB F2		TEAM C2	TEAM C1
    ROUND 14	CLUB D1	CLUB E1		TEAM D1	TEAM E1
    ROUND 14	CLUB E2	CLUB D2		TEAM E2	TEAM D2
    ROUND 14	CLUB F1	CLUB C1			
    					
    ROUND 15	CLUB A2	CLUB D2		TEAM A2	TEAM D2
    ROUND 15	CLUB B1	CLUB C1		TEAM B1	TEAM C1
    ROUND 15	CLUB C2	CLUB E2		TEAM C2	TEAM E2
    ROUND 15	CLUB D1	CLUB F1		TEAM D1	TEAM B2
    ROUND 15	CLUB E1	CLUB A1		TEAM E1	TEAM A1
    ROUND 15	CLUB F2	CLUB B2			
    					
    ROUND 16	CLUB A1	CLUB D1		TEAM A1	TEAM D1
    ROUND 16	CLUB B2	CLUB C2		TEAM B2	TEAM C2
    ROUND 16	CLUB C1	CLUB E1		TEAM C1	TEAM E1
    ROUND 16	CLUB D2	CLUB F2		TEAM D2	TEAM B1
    ROUND 16	CLUB E2	CLUB A2		TEAM E2	TEAM A2
    ROUND 16	CLUB F1	CLUB B1			
    					
    ROUND 17	CLUB A2	CLUB F1			
    ROUND 17	CLUB B2	CLUB E1			
    ROUND 17	CLUB C2	CLUB D1			
    ROUND 17	CLUB D2	CLUB C1			
    ROUND 17	CLUB E2	CLUB B1			
    ROUND 17	CLUB F2	CLUB A1			
    					
    ROUND 18	CLUB A1	CLUB E2			
    ROUND 18	CLUB B1	CLUB D2			
    ROUND 18	CLUB C1	CLUB C2			
    ROUND 18	CLUB D1	CLUB B2			
    ROUND 18	CLUB E1	CLUB A2			
    ROUND 18	CLUB F1	CLUB F2			
    					
    ROUND 19	CLUB A2	CLUB D1		TEAM A2	TEAM E1
    ROUND 19	CLUB B2	CLUB C1		TEAM B2	TEAM C1
    ROUND 19	CLUB C2	CLUB B1		TEAM C2	TEAM B1
    ROUND 19	CLUB D2	CLUB A1		TEAM D2	TEAM A1
    ROUND 19	CLUB E2	CLUB F1		TEAM E2	TEAM D1
    ROUND 19	CLUB F2	CLUB E1			
    					
    ROUND 20	CLUB A1	CLUB C2		TEAM A1	TEAM C2
    ROUND 20	CLUB B1	CLUB B2		TEAM B1	TEAM B2
    ROUND 20	CLUB C1	CLUB A2		TEAM C1	TEAM E2
    ROUND 20	CLUB D1	CLUB F2		TEAM D1	TEAM A2
    ROUND 20	CLUB E1	CLUB E2		TEAM E1	TEAM D2
    ROUND 20	CLUB F1	CLUB D2			
    					
    ROUND 21	CLUB A2	CLUB B1		TEAM A2	TEAM C1
    ROUND 21	CLUB B2	CLUB A1		TEAM B2	TEAM A1
    ROUND 21	CLUB C2	CLUB F1		TEAM C2	TEAM E1
    ROUND 21	CLUB D2	CLUB E1		TEAM D2	TEAM D1
    ROUND 21	CLUB E2	CLUB D1		TEAM E2	TEAM B1
    ROUND 21	CLUB F2	CLUB C1			
    					
    ROUND 22	CLUB A1	CLUB A2		TEAM A1	TEAM E2
    ROUND 22	CLUB B1	CLUB F2		TEAM B1	TEAM A2
    ROUND 22	CLUB C1	CLUB E2		TEAM C1	TEAM D2
    ROUND 22	CLUB D1	CLUB D2		TEAM D1	TEAM C2
    ROUND 22	CLUB E1	CLUB C2		TEAM E1	TEAM B2
    ROUND 22	CLUB F1	CLUB B2			
    

    Left column represents the 12-club division, and the right column the 10-club division.

  42. Hi Fixtureman,

    Thanks for that. How is your system better than the generator above?

  43. I don’t know if it is better than the fixture generator, because I’m not a computer whiz. (I don’t understand programming.) But my system enables creating fixtures for a league with two divisions, with different number of clubs in the two divisions. My system gives each team alternating home and away matches (with a few breaks in pattern), with an unlimited number of neighbour teams (both within the same division and in separate divisions), that is teams that never play at home in the same league rounds.
    By just using Word and the Replace function in Word, one can get a complete two-division fixture set up within a few minutes. The example above is for a league system with a 10-club division and a 12-club division. I have also made a Word sheet with a 12-club division and a 14-club division. And I’m currently working on a 14-club and 16-club set up.

    In short: My system is better than the fixture generator for dummies like me who don’t understand computer programming. (Maybe I’m in the wrong forum?)

  44. Hey Fixtureman,

    You don’t need to understand programming to use my fixtures generator … just visit http://bluebones.net/fixtures.php and put in the number of teams you want fixtures for.

    Then you can copy and paste into Word and search and replace to your heart’s content. Or just enter the team names into the form and skip the search and replace step!

    I can see that one thing you’ve done that my program does not is ensure that “neighbour teams” (with a shared home venue) work across two divisions.

    However, that only applies to the particular cases of a 10-club division and a 12-club division, or a 12-club division with a 14-club division. It would be nice to generalize the solution so that some future fixtures secretary could just input “3 divisions of 10, 12 and 12 clubs” to get the fixtures they need. What exactly is it that you do to create these cross-divisional neighbours? Do you just use trial and error? Or is there a system to it?

    Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.