如何将一列Excel数据排列成多行多列,且不断自动随机变换位置

Excel学习世界 2024-01-30 23:05:04

今天的案例需要用到一连串 365 函数,版本足够的小伙伴一定要搬好小板凳,充分利用自己的优势。

案例:

将下图 1 中的零食随机排列成五行四列,效果如下图 2 所示。

解决方案:

为了便于大家理解,在教今天的公式前,我会把公式中用到的各个函数分解开来先给大家演示一遍,这本身就能拆分成好几个案例。

先生成 20 个随机小数。

1. 在 B2 单元格中输入以下公式:

=RANDARRAY(20)

公式释义:

RANDARRAY 函数的作用是返回一组随机数;

语法为 RANDARRAY([行数],[列数],[最小值],[最大值],[整数或小数;true 为整数,false 为小数])

此处的公式作用是返回 20 个随机小数;

按 F9,随机数就会重新生成

生成一组升序序列。

2. 在 C2 单元格中输入以下公式:

=SEQUENCE(20)

公式释义:

SEQUENCE 的作用是返回一序列数字;

语法为 SEQUENCE(行数,[列数],[起始值],[步长])

这里的公式表示生成一列 1 到 20 的顺序数

所以如果要给每种零食设置 1 到 20 的随机序号,就可以结合上面两个公式一起用。

3. 在 D2 单元格中输入以下公式:

=SORTBY(SEQUENCE(20),RANDARRAY(20))

公式释义:

sortby 的作用简言之就是按条件排序;

语法为 SORTBY(对哪个数组排序, 依据哪个数组排, [排序顺序;1 表示升序,-1 表示降序,默认为升序], [依据2, 排序顺序2],…)

这样就不难理解整段公式了:生成 1 至 20 的数组,然后依据生成的 20 个随机数的升序秩序对其排序

将上述公式演变一下,就可以得到一组顺序随机打乱的零食。

4. 在 E2 单元格中输入以下公式:

=SORTBY(A2:A21,RANDARRAY(20))

公式释义:

对 A2:A21 区域依据 20 个随机数按升序排序

接下来终于到达今天的案例解答,前面逐层推进铺垫了这么多,现在再看下面的公式就一点不难了。

5. 在 G2 单元格中输入以下公式:

=INDEX(SORTBY(A2:A21,RANDARRAY(20)),SEQUENCE(5,4))

公式释义:

SORTBY(A2:A21,RANDARRAY(20)):对 A2:A21 区域依据 20 个随机数按升序排序;

SEQUENCE(5,4):生成 5 行 4 列,从 1 至 20 的递增数组;

INDEX(...,...):根据 SEQUENCE 生成的序列号,从 SORTBY 的结果中提取出对应的数值;

按 F9,区域内的零食会随机变换位置

5 阅读:1074
评论列表
  • 2024-02-10 01:06

    谁能想到大年初一我竟然点开了这篇文章在学习Excel

  • 2024-03-22 13:13

    一个外国人,大年初一就学习电子表格,这是种什么样的精神[笑着哭][笑着哭]

Excel学习世界

简介:Excel 学习交流