【发布时间】:2014-08-12 19:57:09
【问题描述】:
我有一个不同名称的列表,我想将每个名称复制 3 个副本。例如:
A
B
C
D
E
到以下:
A
A
A
B
B
B
C
C
C
D
D
D
E
E
E
我将如何在 excel 中完成此操作?可以在Excel中完成吗?
【问题讨论】:
标签: excel excel-formula
我有一个不同名称的列表,我想将每个名称复制 3 个副本。例如:
A
B
C
D
E
到以下:
A
A
A
B
B
B
C
C
C
D
D
D
E
E
E
我将如何在 excel 中完成此操作?可以在Excel中完成吗?
【问题讨论】:
标签: excel excel-formula
有很多方法可以做到这一点......一种方法是使用类似于OFFSET() 函数的东西,如下所示:
假设您的原始列表位于单元格A1:A5 中,比如说。然后你可以把这个公式放在你想要的地方:
=OFFSET($A$1,ROUNDDOWN((ROW(A1)-1)/5,0),0)
然后将其向下拖动到所需的 25 行。
本质上,你的意思是:
将单元格A1 偏移ROUNDDOWN((ROW(A1)-1)/5,0) 行和0 列。
查看ROUNDDOWN() 函数:
Row(A1) = 1 (Similarly, Row(A2) = 2, etc...
(Row(A1)-1) / 5 = 0/5 ; 1/5 ; 2/5 ; .....
Rounddowwn(...) means 0/5 to 4/5 becomes 0 ; 5/5 to 9/5 becomes 1 ; etc
因此,它会将A1 偏移0 行和0 列5 次,然后在接下来的5 次偏移1 行和0 列,等等。
希望这是有道理的:)
编辑:
最初的问题要求每个值复制 3 个副本,而不是 5 个 - 我有意在此编辑中保留答案,以便其他人可以看到如何根据需要将其更改为任意数量的重复...全部那将是:
=OFFSET($A$1,ROUNDDOWN((ROW(A1)-1)/3,0),0)
只需除以3 而不是5 即可...
【讨论】: