Excel把单元格数据重复指定次数显示在另外一列
来源:网络收集 点击: 时间:2024-05-05首先,看一下原始数据。A2:A5是要重复的文本,B列对应的是指定重复的次数。要求从C2开始输出。

双击C2单元格,输入公式:
=INDEX(A$1:A$6,SMALL(IF(B$2:B$5=COLUMN(A1:Z1),ROW(A$2:A$5),6),ROW(A1)))
输入完毕后,左手按住Ctrl和Shift,右手按下回车键运行公式。

将C2单元格的数据下拉,C列就会根据B列指定的次数重复显示A列内容。

首先,选中C2:AB5单元格区域,输入公式:
=IF(B$2:B$5=COLUMN(A1:Z1),ROW(A$2:A$5),6)
输入完毕后,左手按住Ctrl和Shift,右手按下回车键运行公式。运行完毕后可以发现如果B列的次数小于等于COLUMN(A1:Z1)就返回B列的次数单元格的行号,否则返回6。比如说B2单元格的行号值出现2次,B3单元格的行号值出现了3次,以此类推。

我们在B列后插入一列,输入公式:
=SMALL($D$2:$AC$5,ROW(A1)),下拉公式,刚才的行号数组就从小到大输出了。

然后,外层嵌套INDEX函数:
=INDEX(A$1:A$6,SMALL($D$2:$AC$5,ROW(A1)))
这样,就从A$1:A$6中根据B列指定次数将A2:A5的数据重复显示了。注意,INDEX第一参数选择的是A$1:A$6,之所以选择A1是因为刚才返回的是行号,不是A2:A5中的顺序值。比如说A2的值行号是2,但是在A2:A5中顺序号是1。之所以选A6,是为了下拉公式时超过B列次数总和时显示空。现在显示0的单元格其实是引用的A6单元格。

将刚才的公式修改一下,变成:
=INDEX(A$1:A$6,SMALL($D$2:$AC$5,ROW(A1)))
这样引用的A6单元格就变成了“空”显示。

如果您觉得此经验有用,可以点击本页面右上方的【大拇指】图案和【收藏按钮】或者右下方的【分享】按钮,也可以点击本注意事项下方的【收藏】按钮。
如需要了解更多内容,可以百度搜索“百度经验shaowu459”或到百度知道向我提问。
excel单元格版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_680900.html