Google Sheets COLUMN TOP ArrayFormula 计算 ROW wise 这需要 ROW-wise ArrayFormula
Google Sheets COLUMN TOP ArrayFormula to calculate ROW wise which require ROW-wise ArrayFormula
参考下面 link。
本质上是为了得到一个几何级数,每一项重复X次。
sheet 的正确结果是使用跨行的 ArrayFormula 获得的。这需要按列复制公式。
我想要的是列顶部的单个 ArrayFormula,它按行计算结果(如所示)。我对 sheet 的尝试失败了。
您的示例 sheet 上的新标签名为 MK.Help。这个公式在单元格 E1 中。
它使用了我(可能还有其他一些人)称之为查询的东西 header smush。它利用 query() 的内置能力来连接多个 header 行。它将转置数组提供给查询,然后通过将 QUERY() 的第三个参数设置为一个非常大的数字来假装整个事情都是 header 行。这个技巧很常见,使用 9^9 或 9^99,这只是写一个非常大的数字(9 的 99 次方)的一种非常简洁的方式。
=ARRAYFORMULA(
IF(
ROW(A:A) = 1,
"Result",
TRANSPOSE(
SUBSTITUTE(TRIM(
QUERY(TRANSPOSE(
REPT(
IF(
SEQUENCE(1,MAX(C:C),0) > C:C,,
ROUND(A:A * B:B ^ SEQUENCE(1,MAX(C:C),0)) & CHAR(10)
),
D:D
)
),, 9^9)
), CHAR(10), ",")
)
)
)
与 Matt 的解决方案相同,唯一的区别是重复是使用正则表达式完成的。
试试这个(在 sheet kishkin
):
=ARRAYFORMULA(
IF(
A2:A = "",,
REGEXREPLACE(
REGEXREPLACE(
TRANSPOSE(QUERY(TRANSPOSE(
IF(
SEQUENCE(1, MAX(C2:C)) > C2:C,,
ROUND(A2:A * B2:B ^ SEQUENCE(1, MAX(C2:C),)) & ","
)
),, MAX(C2:C))),
"[^,\s]+,?",
REPT("[=10=]", D2:D)
),
"\s+|,\s*$",
)
)
)
参考下面 link。
本质上是为了得到一个几何级数,每一项重复X次。
sheet 的正确结果是使用跨行的 ArrayFormula 获得的。这需要按列复制公式。
我想要的是列顶部的单个 ArrayFormula,它按行计算结果(如所示)。我对 sheet 的尝试失败了。
您的示例 sheet 上的新标签名为 MK.Help。这个公式在单元格 E1 中。
它使用了我(可能还有其他一些人)称之为查询的东西 header smush。它利用 query() 的内置能力来连接多个 header 行。它将转置数组提供给查询,然后通过将 QUERY() 的第三个参数设置为一个非常大的数字来假装整个事情都是 header 行。这个技巧很常见,使用 9^9 或 9^99,这只是写一个非常大的数字(9 的 99 次方)的一种非常简洁的方式。
=ARRAYFORMULA(
IF(
ROW(A:A) = 1,
"Result",
TRANSPOSE(
SUBSTITUTE(TRIM(
QUERY(TRANSPOSE(
REPT(
IF(
SEQUENCE(1,MAX(C:C),0) > C:C,,
ROUND(A:A * B:B ^ SEQUENCE(1,MAX(C:C),0)) & CHAR(10)
),
D:D
)
),, 9^9)
), CHAR(10), ",")
)
)
)
与 Matt 的解决方案相同,唯一的区别是重复是使用正则表达式完成的。
试试这个(在 sheet kishkin
):
=ARRAYFORMULA(
IF(
A2:A = "",,
REGEXREPLACE(
REGEXREPLACE(
TRANSPOSE(QUERY(TRANSPOSE(
IF(
SEQUENCE(1, MAX(C2:C)) > C2:C,,
ROUND(A2:A * B2:B ^ SEQUENCE(1, MAX(C2:C),)) & ","
)
),, MAX(C2:C))),
"[^,\s]+,?",
REPT("[=10=]", D2:D)
),
"\s+|,\s*$",
)
)
)