跳转至

RANDARRAY函数

函数概述

RANDARRAY 用于生成一个由随机数构成的数组,并将结果以“溢出”的方式填充到相邻单元格区域中。它常用于快速造数、抽样、模拟测试数据、随机排序等场景。

  • 默认生成 0 到 1 之间的随机小数
  • 可指定生成的行数、列数、最小值、最大值
  • 可控制生成整数小数
  • 结果会随工作表重新计算而变化(如按 F9

基础语法

=RANDARRAY([rows],[columns],[min],[max],[whole_number])

参数说明

参数 是否可选 含义 说明
rows 行数 省略时默认为 1
columns 列数 省略时默认为 1
min 最小值 省略时默认为 0
max 最大值 省略时默认为 1
whole_number 是否取整 TRUE 返回整数;FALSE/省略返回小数

补充规则(便于理解结果范围):

  • whole_number=FALSE:返回区间 [min, max) 的随机小数(包含 min,不包含 max)
  • whole_number=TRUE:返回 min 到 max 之间的随机整数(通常可理解为两端都可能出现)

基础用法示范

下面示例均为可直接粘贴到单元格的公式,结果会向右/向下溢出成数组区域。

  1. 生成 1 个随机小数(默认)

    =RANDARRAY()
    
    解释:生成 1 行 1 列,范围 0~1 的随机小数。

  2. 生成 5 行 3 列随机小数(0~1)

    =RANDARRAY(5,3)
    
    解释:生成 5×3 的随机小数矩阵,常用于快速造数。

  3. 生成 10 个 1~100 的随机整数(一列)

    =RANDARRAY(10,1,1,100,TRUE)
    
    解释:生成 10 行 1 列,整数范围 1~100。

  4. 生成 3 行 4 列的随机小数(10~20)

    =RANDARRAY(3,4,10,20,FALSE)
    
    解释:生成 3×4 的随机小数,数值落在 10~20 区间内。

  5. 生成随机日期序列(本质是序列号)

    =RANDARRAY(12,1,DATE(2026,1,1),DATE(2026,12,31),TRUE)
    
    解释:生成 12 个 2026 年内的随机日期。若显示为数字,请把单元格格式设置为“日期”。

  6. 生成随机排序用的“随机键”

    =RANDARRAY(20,1)
    
    解释:为 20 条记录生成随机键;再配合 SORTBY(数据区域, 随机键) 可实现随机打乱。

总结

RANDARRAY 是动态数组体系下的高效造数函数:用一条公式即可生成任意尺寸的随机数组,并能精确控制范围与取整方式。日常做数据练习、抽样模拟、随机排序时,优先考虑用它快速得到可复用的随机数据区域。