Function Problems

How to Randomly Select Every Name Twice a Month in Excel

Adam DavisAdam Davis Oct 26, 2026 868 views

Question details

The user needs a method to randomly draw names from a list of approximately 100 people, ensuring each person is chosen exactly twice within a given month.

How to Randomly Select Every Name Twice a Month in Excel
Product
Excel
Device & OS
not provided
Scenario
Creating a randomized duty roster or selection list for a monthly cycle without exceeding the maximum pick limit.
Observed behavior
The goal is to achieve fair random selection while strictly capping the maximum number of times any single name can be selected at two.
Before you start

Ensure your list of names contains no blank rows or duplicates. Formatting your data as an Excel Table (Ctrl+T) is highly recommended, as it makes sorting and managing tracking columns much easier.

Solution 1Recommended

Use the RAND() Function and a Selection Tracking Column

This method uses Excel's random number generator to shuffle the list and a dedicated count column to ensure no individual is picked more than twice.

This is the most reliable method for maintaining true randomness while accurately tracking how many times each person has been selected throughout the month.

1
Add a Random Helper Column

In the column immediately to the right of your list of names, enter the formula =RAND() in the first cell and drag it down to the bottom of your list to assign a random decimal to each person.

2
Sort the List Randomly

Select your entire dataset (both the names and the random numbers). Go to the Data tab, click 'Sort', and choose to sort by your random helper column. This will shuffle all the names into a random order.

3
Create a Tracking Column

Add a third column named 'Times Selected'. As you pick names from the top of the shuffled list to fulfill your needs, manually enter '1' next to their name (or add 1 to the existing number if they were picked before).

4
Exclude Names Picked Twice

Once a person's 'Times Selected' count reaches 2, either highlight their row in gray or use Excel's Filter tool to only show rows where the count is 'Less than 2'. This ensures they are excluded from future draws.

5
Reset for the Next Cycle

When all names have reached a count of 2, clear the 'Times Selected' column, allow the =RAND() formula to recalculate, and re-sort the list to start a fresh cycle for the new month.

Use the RAND() Function and a Selection Tracking Column
Pro Tip: The RAND() function recalculates every time you edit the sheet. To lock the random order, copy the column of random numbers, right-click, and select 'Paste as Values' to freeze them before you start sorting.
Solve Data Problems Easily

Randomize Data Effortlessly with WPS Spreadsheet

WPS Spreadsheet provides robust, built-in functions like RAND() and RANDARRAY(), making it incredibly easy to shuffle lists, assign duties, and manage monthly rosters without complex manual setups.

  1. 1. Open your list in WPS Spreadsheet: Launch WPS Office, create a new spreadsheet, and paste your list of approximately 100 names into a column.
  2. 2. Apply the RAND formula: Type =RAND() in the adjacent column cell and double-click the fill handle to apply it to all rows.
  3. 3. Sort the data: Navigate to the Data tab, click Sort, and arrange the list based on the random values to shuffle the names.
  4. 4. Track your selections: Add a tracking column and utilize WPS's built-in AutoFilter to hide rows once their selection count reaches 2.
Fully compatible with Microsoft Excel .xlsx files and standard formulas.Intuitive sorting and filtering tools to manipulate randomized data quickly.Lightweight performance that easily handles rosters of hundreds of names.Completely free to download and use for your daily office tasks.
microsoft office alternative - wps office

Frequently Asked Questions

How do I stop the RAND() function from constantly recalculating?

The RAND() function is volatile, meaning it recalculates every time any change is made to the workbook. To freeze your random numbers, highlight the column containing the formulas, copy it (Ctrl+C), right-click the same selection, and choose 'Paste as Values' (or press Ctrl+Shift+V). This converts the formulas into static numbers.

Can I use the RANDARRAY function to automatically shuffle lists?

Yes, if you are using newer versions of Excel or WPS Office. You can type =SORTBY(A2:A101, RANDARRAY(ROWS(A2:A101))) in an empty column. This will automatically generate a dynamic, randomly shuffled copy of the list in A2:A101 without needing manual helper columns.

How can I automatically hide names that have already been picked twice?

You can achieve this using the Data Filter tool. Highlight your headers, go to Data > Filter. On your 'Selection Count' column, set a number filter to show only rows 'Less than 2'. Whenever a person's count is updated to 2, simply reapply the filter, and that row will automatically hide from your active view.