在 Excel 中随机化列表(简单分步教程)
执行随机排序是一种快速简便的方法,可以确保所有情况以相等的概率出现。在本教程中,我们将介绍如何通过几个简单的步骤轻松地在 Excel 中随机化或打乱列表顺序。

视频:在 Excel 中随机化列表
使用 RAND 函数随机化列表
任何版本的 Excel 用户都可以借助 RAND 函数和排序功能来随机排序其原始数据集,请按照以下步骤操作。
步骤 1:输入 RAND 公式
选择要随机化的列表顶部单元格旁边的单元格,输入以下 RAND 公式,然后按“Enter”。
=RAND()
步骤 2:将 RAND 公式填充到其他单元格
双击公式单元格的填充柄(右下角的小绿色方块),将公式应用到下方的单元格。
1. 选择包含 RAND 公式的列表“B2:B8”。
2. 在“开始”选项卡的“编辑”组中,点击“排序和筛选” > “从小到大排序”。
3. 在弹出的对话框中,选择“扩展选定区域”,然后点击“排序”。
结果
现在,一切就绪!列表已随机化,如下所示。
使用 RANDARRAY、SORTBY 和 ROWS 函数随机化列表(适用于 Excel 365/2021)
如果您使用的是较新版本的 Excel,例如 Microsoft 365 的 Excel、Excel 2021 或 Excel 网页版,RANDARRAY、SORTBY 和 ROWS 公式将帮助您快速在指定位置打乱列表顺序。
步骤 1:输入 RANDARRAY、SORTBY 和 ROWS 公式
选择一个空白单元格作为获取随机化结果的位置,输入以下公式(请注意,您应将公式中的“A2:A8”更改为要随机化的原始列表),然后按“Enter”。
=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))
- 当溢出范围(在此例中为 B2:B8)不为空时,Excel 会返回“#SPILL!”错误。
- 该公式是易失性的:每次工作表更改时都会重新计算其结果。如果想再次打乱列表,请按“F9”。
- 公式结果(随机化列表)不可编辑。如果需要编辑随机化列表,请继续下一步。
(可选)步骤 2:复制并粘贴公式结果以使其可编辑
如果您只想查看随机结果,可以跳过此步骤。如果想编辑随机打乱的列表,则应复制公式结果并仅粘贴值:
1. 选择公式结果并按“Ctrl” + “C”进行复制。
2. 右键单击要粘贴复制结果的单元格。(也可以将其粘贴回原始位置。)
3. 从右键菜单中选择“仅粘贴值”选项。
结果
现在,您将获得一个被打乱且可编辑的列表,如下所示。
使用 Kutools 在 2 次点击内随机化 Excel 中的列表
如果您厌倦了使用公式,并希望借助插件的帮助,Kutools for Excel 的随机排序/选择区域功能可以帮助您更轻松地执行随机排序,并提供更多选项。请按照以下步骤操作:
首先,选择要打乱的列表。然后选择“Kutools” > “区域” > “随机排序/选择区域”。在弹出的“随机排序/选择区域”对话框中,选择“整行”,然后点击“确定”。
- 要试用“随机排序/选择区域”功能,您需要在计算机上安装“Kutools for Excel”。如果没有安装 Kutools,请点击此处下载并安装。
- 要撤销操作,请按“Ctrl” + “Z”。
- 要以其他方式打乱您的数据,请查看本教程:在 Excel 中快速随机排序或选择单元格、行和列。
使用 VBA 随机化列表
如果您希望通过 VBA 方法随机化列表,请按照以下步骤操作。
步骤 1:选择要打乱的列表
步骤 2:将 VBA 代码复制到模块窗口
1. 按“Ctrl” + “F11”打开 VBA 编辑器,然后点击“插入” > “模块”以打开模块代码窗口。
2. 将以下 VBA 代码复制并粘贴到打开的模块窗口中。
Sub RandomSort()
'Update by ExtendOffice
Dim xRg As Range
Dim xNum, xF, xI As Integer
Dim xWSh, xAWSh As Worksheet
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xAWSh = Application.ActiveSheet
Set xRg = ActiveWindow.RangeSelection
Set xWSh = Worksheets.Add
xNum = xRg.Count
For xF = xNum To 1 Step -1
xI = WorksheetFunction.RandBetween(1, xF)
xWSh.Range("A1").Value = xRg.Item(xI)
xRg.Item(xI) = xRg.Item(xF)
xRg.Item(xF) = xWSh.Range("A1")
Next
xWSh.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
在代码窗口中,按“F5”或点击 按钮以运行此代码。
结果
相关文章
- 如何在 Excel 中随机选择单元格?
- 假设您在工作表中有一列值(A1:A15),现在需要从中随机选择 5 个单元格,该如何处理呢?本文将向您展示一些在 Excel 中随机选择单元格的技巧。
- 如何从列表中随机选择数据而不重复?
- 本文将介绍如何从列表中随机选择单元格而不会出现重复值。以下两种方法可能帮助您尽快完成此任务。
- 如何根据条件在 Excel 中随机选择单元格?
- 例如,您需要根据一个或两个条件从指定范围内随机选择一些数据,如何在 Excel 中解决这个问题?本文将为您介绍几种解决方案。
- 如何在 Excel 中从数据列表中随机填充值?
- 例如,您有一个名称列表,现在需要随机选择几个名称并填充到给定的单元格中,该如何处理?本文将介绍几种在 Excel 中从数据列表中随机填充值的方法。
- 更多 Excel 技巧和窍门...
最佳 Office 办公效率工具
🤖 | Kutools AI 助手:基于智能执行,彻底革新数据分析 |生成代码|创建自定义公式|分析数据并生成图表|调用 Kutools Functions… |
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)... | |
高级 LOOKUP:多条件查找 (VLookup)|多值查找 (VLookup)|多表查找 (VLookup Across Multiple Sheets)|模糊查找 (Fuzzy Lookup)... | |
高级下拉列表:快速创建下拉列表|依赖型下拉列表|多选下拉列表... | |
列管理器:添加指定数量的列 |移动列 |切换隐藏列的可见状态| 比较区域及列... | |
特色功能:网格聚焦|设计视图|增强编辑栏|工作簿 & 工作表管理器|资源库(自动文本)|日期提取|合并数据|加密/解密单元格|按列表发送电子邮件|超级筛选|特殊筛选(筛选粗体/倾斜/删除线等)... | |
热门15 大工具集:12 款文本工具(添加文本、删除特定字符等)|50+ 种图表 类型(甘特图等)|40+ 实用公式(基于生日计算年龄等)|19 款插入工具(插入二维码、按路径插入图片等)|12 种转换工具(小写金额转大写、汇率转换等)|7 款合并与分割工具(高级合并行、分割单元格等)|...更多精彩等你发现 |
用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...
Office Tab 为 Office 带来标签式界面,让你的工作更加轻松
- 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
- 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
- 办公效率提升50%,每天帮你减少上百次鼠标点击!