在 Google 表格中将每一行重复 N 次

问题描述 投票:0回答:4

我有一列包含 3 行,我希望能够每行重复 5 次。

例子

姓名

期望的输出

输出

这是我尝试过的:

=TRANSPOSE(split(rept(join(";",A:A)&";",5),";"))

我的尝试产生:

输出
google-sheets split google-sheets-formula repeat transpose
4个回答
9
投票

无需拆分和连接以及其他字符串操作,

=ARRAYFORMULA(FLATTEN(IF(SEQUENCE(ROWS(A2:A4),5),A2:A4)))
  • A2:A4
    重复的范围
  • 5
    重复次数
  • SEQUENCE
    创建二维数组
  • IF
    将一维数组
    A2:A4
    转置为大小等于创建的
    SEQUENCE
    数组
  • 的二维数组
  • FLATTEN
    二维到一维数组。
A1 姓名
A2
A3
A4
输出

8
投票
=ARRAYFORMULA(TRIM(TRANSPOSE(SPLIT(QUERY(
 REPT(A1:A3&"♠", 5), ,999^99), "♠"))))


=SORT(TRIM(TRANSPOSE(SPLIT(QUERY(ARRAYFORMULA(
 REPT(A1:A3&"♠", 5)), ,999^99), "♠"))), 1, 0)


1
投票

=transpose(split(join("~",ArrayFormula(rept({Balls}&"~",3))),"~"))

地点:

  • Range
    是要重复的文本范围
  • Reps
    是重复次数

请注意,如果您的文本包含 ~ 将

"~"
的所有实例更改为另一个字符


0
投票

这是另一个技巧。

A1:A3
在我的例子中是狗、猫、球重复了 4 次。

=ARRAYFORMULA( FLATTEN(A1:A3 & SPLIT(REPT(" |",4),"|")))
© www.soinside.com 2019 - 2024. All rights reserved.