You are on page 1of 14

Batting and Bowling Rotation Calculator

Purpose:
This Excel workbook is intended to enable the coach/manager to comply with the batting and bowling rotation requirements i
CJCC rules. These rules require batsmen and bowlers to experience different positions throughout the season, such that they
do not play in the same position the next game and they do not repeat positions until they have been everywhere.

The CJCC rules are specifically designed and state that every player must be given an equal opportunity to bat and bowl, irresp
The rotation rules are part of this.

Many times throughout a season, the players list will change (both planned and unplanned) absences. This creates considerab
ensuring that the rotation rules are complied with as a simple "move player down one or two spots" does not work.
This Excel workbook allows coaches/managers to take into account these problems whilst still complying.
It also treats batting and bowling separately.

It doesn't tell coaches:


when batsmen have to retire
when bowlers have bowled enough overs
how to deal with 2nd innings

This workbook randomly distributes players throughout a complete team - it does NOT support fixed batting or bowling orders
or teams where there is a batting group and a bowling group that rotate internally but there is no intermingling of both group
It also does not support batting or bowling partners.

Disclaimer:
1. The workbook and its macros have not been fully "proof tested" nor are they secure. Hence use of this workbook does NOT
coach/manager to ensure compliance with the rotation rules - basically "but we followed this workbook" is NOT a defence to t
2. This workbook and its macros is freeware and are unsupported. If you encounter problems using it, then don't call me askin
3. If you do use this workbook and its macros - or developed something from this - then it would be nice if you acknowledged
4. suggested improvements are welcome - though don't expect a rapid turnaround of improvements. Minor things like work,

Limitations:
The following limitations apply:
1. Maximum team size for any one game = 20
2. Maximum number of players in the team for a season = 30
3. Maximum number of rounds = 15
4. The batting spreadsheet does NOT take into account players who did not bat last game - it only provides an order
5. Trying to use the workbook to "solve" coach induced rotation issues later in the season becomes increasingly difficult.
6. This workbook and macros were written using Excel 2010 using Windows 7.
7. Macros are used extensively throughout this spreadsheet - this means do NOT, repeat NOT, insert or delete rows or column
8. Importantly, this workbook does not replace the coach's BRAIN.

How it works:
The spreadsheets are built around a series of macros that use a database of the season's allocations to date and a random num
place players into the next week's team order.
If you look at either Batting or Bowling spreadsheets, there are two coloured sections.
The BLUE section is where the macros provide the calculated player order
The GREEN section is where the macro records how many times each player has been in each position.
The macros look at this round's team list, looks up the data about the player in the GREEN section, then randomly puts that pl
where he hasn't played before (or played played least). It then repeats until the team is allocated.
Because it is random distribution, the macro can need multiple goes at generating the list. It's currently set to do a maximum

How to use 1st time:


1. Save this workbook onto the computer where you want. When you run the macros, it saves itself.
2. Set up of your computer to run Macros
Because Macros are used extensively throughout this workbook you need to enable macros on your computer.
You can do this either everytime you open the workbook or change the macro security settings. Up to you.

Prior to Round 1
1. Open the Batting spreadsheet
2. enter the team list into Column A, starting with the first player in cell A5 (next to position 1) and going down the column.
Do not leave any gaps and ensure that each player is unique. You can use first names and last names.
Make sure that only the players that you are expecting to play this game are entered.
3. Once the complete team list is entered, click on the "Calculate" button on the spreadsheet.
4. You will be asked a series of questions, such as which round do you want to calculate. In this case, enter "1"
Asking the spreadsheet to calculate the 1st round resets the complete table.
5. When the macros have finished calculating, the order is put into the blue area under the relevant Round
7. Open the Bowling spreadsheet.
8. repeat the above for the Bowling list.

At the end of the game or before you run the spreadsheet again
If during the game, you had to change the batting or bowling order away from the computer generated list, you need to take t
and change the data held by the computer reflect what actually happened in the game.
You have to do this even if the change was still legal or the player was new or leaving - it affects later allocations
1. Open the relevant spreadsheet
If both the batting and bowling order changed, then you have to change both batting and bowling spreadsheets
2. In the blue area, find the Round that was different to the computer
3. Using exactly the same names, move the players around until the actual order in the column is what happened.
4. if a player did not play (e.g. didn't turn up) just remove him from the column

For the next Rounds


1. open the relevant spreadsheet
2. enter the team list into Column A, starting with the first player in cell A5 (next to position 1) and going down the column.
Do not leave any gaps and ensure that each player is unique. You can use first names and last names.
Make sure that only the players that you are expecting to play this game are entered.
3. Once the complete team list is entered, click on the "Calculate" button on the spreadsheet.
4. You will be asked a series of questions, such as which round do you want to calculate.
5. When the macros have finished calculating, the order is put into the blue area under the relevant Round
6. repeat for the other spreadsheet.
owling rotation requirements in the
out the season, such that they
been everywhere.

ortunity to bat and bowl, irrespective of age or skill.

ences. This creates considerable difficulties


ots" does not work.

fixed batting or bowling orders


o intermingling of both groups on the team list.

use of this workbook does NOT remove the obligation on the


orkbook" is NOT a defence to the Association
sing it, then don't call me asking for help.
d be nice if you acknowledged doing so -c/- President, Whitfords Junior Cricket Club
ments. Minor things like work, family, sport interfere! I am a volunteer only!

ly provides an order
mes increasingly difficult.

nsert or delete rows or columns.

tions to date and a random number generator to randomly


on, then randomly puts that player into the team list

urrently set to do a maximum of about a million goes.

our computer.

nd going down the column.

case, enter "1"

vant Round

nerated list, you need to take this into account

later allocations

ng spreadsheets

is what happened.

nd going down the column.

vant Round
team list for batting
this round position Round 1 Round 2 Round 3 Round 4 Round 5 Round 6

a 1 j k
b 2 i f
c 3 f l
d 4 a i
e 5 k b
f 6 l e
g 7 h g
h 8 c d
i 9 g h
j 10 b a
k 11 e j
l 12 d c
13
14
15
16
17
18
19
20
Round 7 Round 8 Round 9 Round 10 Round 11 Round 12 Round 13 Round 14
Round 15 Positions Table

player Position Position Position Position Position Position


1 2 1&2 3 4 5
a 0 0 0 0 1 0
b 0 0 0 0 0 1
c 0 0 0 0 0 0
d 0 0 0 0 0 0
e 0 0 0 0 0 0
f 0 1 1 1 0 0
g 0 0 0 0 0 0
h 0 0 0 0 0 0
i 0 1 1 0 1 0
j 1 0 1 0 0 0
k 1 0 1 0 0 1
l 0 0 0 1 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
Position Position Position Position Position Position Position Position Position Position
6 7 8 9 10 11 12 13 14 15
0 0 0 0 1 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0
0 0 1 0 0 0 1 0 0 0
0 0 1 0 0 0 1 0 0 0
1 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 1 0 1 0 0 0 0 0 0
0 1 0 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
Position Position Position Position Position Max
16 17 18 19 20
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
team list for Bowling
this round position Round 1 Round 2 Round 3 Round 4 Round 5 Round 6

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Round 7 Round 8 Round 9 Round 10 Round 11 Round 12 Round 13 Round 14
Round 15 Positions Table

player Position Position Position Position Position Position


1 2 1&2 3 4 5
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
Position Position Position Position Position Position Position Position Position Position
6 7 8 9 10 11 12 13 14 15
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
Position Position Position Position Position Max
16 17 18 19 20
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0

You might also like