How to Randomly Schedule Tennis Doubles Partners in Excel
Question details
The user needs to generate a fair and randomized weekly schedule for a group of 10 tennis players, allocating them into doubles matches and byes.

- Product
- Excel
- Device & OS
- not provided
- Scenario
- Creating a random weekly sports schedule where 8 players are assigned to two doubles courts and 2 players sit out with a bye.
- Observed behavior
- Requires a formula or method to randomize a list of 10 players and lock the results so the schedule does not continuously recalculate and change.
Ensure you have the full list of your 10 tennis players entered in a single column in your spreadsheet before applying the randomization formula.
Use the RAND() Function and Sort Method
Generate random numbers next to your players, sort the list to shuffle them, and assign matches and byes based on their new randomized positions.
The most efficient way to randomize a list in a spreadsheet is by using the RAND() function. This function generates a random decimal number between 0 and 1. By assigning a random number to each player and then sorting the list, you effectively shuffle the players into a completely random order.
In column A (from A2 to A11), type the names of all 10 tennis players.
Click on cell B2, type =RAND() and press Enter. Drag the fill handle (the small square at the bottom right of the cell) down to cell B11 to assign a random number to every player.
Highlight both columns A and B (A2:B11). Go to the Data tab on the ribbon, click on 'Sort', and choose to sort by Column B (the column containing the random numbers) from Smallest to Largest.
Now that your players are shuffled, assign rows 1-2 and 3-4 to Court 1, rows 5-6 and 7-8 to Court 2, and give the players in rows 9-10 a bye for the week.
Because RAND() recalculates every time you edit the sheet, you must lock the results. Select the shuffled list in Column A, copy it (Ctrl+C), right-click the same area, and select 'Paste Special' > 'Values'. This replaces the dynamic formulas with static text.

Create Random Schedules for Free in WPS Spreadsheet
WPS Spreadsheet provides powerful functions like RAND and advanced sorting features to help you easily manage sports schedules, all within a free, lightweight, and highly compatible application.
- 1. List your players: Open WPS Spreadsheet and enter your 10 tennis players in the first column.
- 2. Add random values: Enter =RAND() in the adjacent column and drag the fill handle to apply it to all players.
- 3. Sort the players: Navigate to the Data tab, select your data range, and sort by the random numbers column to shuffle.
- 4. Lock the results: Assign the first 8 players to courts and the last 2 to byes, then copy the randomized names and choose 'Paste as Values' to prevent recalculation.

Frequently Asked Questions
Why does my random schedule keep changing every time I type in the sheet?
The RAND() function is volatile, meaning it automatically recalculates and generates new numbers whenever any cell in the worksheet is modified. To prevent your schedule from changing, you must copy the randomized results and use the 'Paste Values' feature to overwrite the formulas with static data.
Can I use this method for a different number of players?
Yes, you can use the RAND() method for any number of players. Simply list all the players, apply the formula to the adjacent column, and sort. You just need to manually decide the cut-off point for matches and byes based on your specific court availability.
Is there a formula that randomizes once and doesn't recalculate automatically?
In standard spreadsheet software, the RAND() and RANDBETWEEN() functions always recalculate automatically. The most reliable workaround without using VBA macros is to use the Copy and 'Paste as Values' technique immediately after sorting.




