FormulaCraft

How to pick a random name from a list in Excel and Google Sheets

Excel & Google Sheets
=INDEX(A2:A4,RANDBETWEEN(1,3))

Verified example

Computed by a real spreadsheet engine on the sample data below.

Names
Alice
Bob
Carol

=INDEX(A2:A4,RANDBETWEEN(1,3))Alice

Try it with your data

Edit the grid or formula, then run it through a real spreadsheet engine — no signup.

Sample data — click any cell to edit

Runs server-side · free · no signup

Step by step

  1. 1Enter your list of names in a column, for example A2:A20.
  2. 2In any empty cell, type =INDEX(A2:A20,RANDBETWEEN(1,COUNTA(A2:A20))) and press Enter.
  3. 3The formula randomly picks one name from the list — it recalculates every time the sheet changes.
  4. 4To freeze the selected name so it doesn't change, copy the result cell and paste as Values Only (Ctrl+Shift+V).

Tips

Working on a sheet you inherited? Run the Auditor on the whole file first — it flags every #REF!, #N/A, broken column pattern, and inconsistent formula in seconds, free, no signup.

Frequently asked

How do I stop the random name from changing every time I edit the sheet?

Copy the cell with the formula, right-click, Paste Special → Values. This replaces the formula with the static result.

Can I pick a random name without repeating (no replacement)?

Add a helper column with =RAND() next to each name, then use RANK to order them, and pick the top N — or use the SORTBY+RANDARRAY approach in Excel 365 / Google Sheets.

Formulas used

Related tasks

Written and reviewed by FormulaCraft Team. Each formula on this page is run through our verification engine before publishing.

Last reviewed: