夜雨聆风学习资料网

ARTICLE · 1126655

按规定次数重复列出 Excel 单元格,如今变得简单至极

按规定次数重复列出 Excel 单元格,如今变得简单至极

公众号平台最新的推送规则对技术类文章不太友善,如果不想错过干货,请务必“设为星标”哦!!!

点击任意文章上方的“☆星标”即可。

将单元格按指定次数重复显示,这不是新课题,但是现在可以很简单。

不信来看三个方法。

案例:

从下图 1 的姓名按 B 列的次数重复显示,效果如下图 2 所示。

解决方案 1:

1. 在 D2 单元格中输入以下公式 --> 回车:

=TOCOL(IF(COLUMN(A:Z)>B2:B4,NA(),A2:A4),2)

公式释义:

  • COLUMN(A:Z):提取出 A 至 Z 列的列号;之所以截至到 Z 列,是因为我们不确定 B 列的求和数是多少,就尽可能取一个大点的数据区间;

  • IF(...>B2:B4,NA(),A2:A4):将上述公式的结果与 B 列的数值一一比较,如果大于 B 列的值,则返回错误值,反之返回 A 列的值;

  • TOCOL(...,2):将上述结果区域转换成一列,第二个参数为 2 表示忽略错误值

解决方案 2:

1. 改用以下公式:

=TEXTSPLIT(CONCAT(REPT(A2:A4&",",B2:B4)),,",",1)

公式释义:

  • REPT(A2:A4&",",B2:B4):给 A 列的每个姓名后面加上“,”符号,重复显示,次数为 B 列的数值;

  • CONCAT(...):将上述结果连接在一起;

  • TEXTSPLIT(...,,",",1):将上述结果按列行分,拆分的节点为“,”符号,最后一个参数 1 表示忽略连续的换行

解决方案 3:

1. 选中数据表的任意单元格 --> 选择任务栏的“数据”-->“来自表格/区域”

2. 在弹出的对话框中保留默认设置 --> 点击“确定”

表格已经上传至 Power Query。

3. 选择任务栏的“添加列”-->“自定义列”

4. 在弹出的对话框中输入以下公式 --> 点击“确定”

{1..[重复次数]}

5. 将“自定义”列“扩展到新行”。

6. 删除“自定义”列。

7. 选择任务栏的“主页”-->“关闭并上载”-->“关闭并上载至”

8. 在弹出的对话框中选择“表”--> 选择“现有工作表”及所需上传至的位置 --> 点击“确定”

右侧绿色的表格就实现了需求。

转发、点赞、在看也是爱!

相关学习资料