首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

今天的案例需要用到一连串 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,区域内的零食会随机变换位置

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OB57uFWbLnCgp6tRJr2lq-ow0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券