如何在 excel 中打印,每列基于值(数字)进行迭代
How to print in excel with iteration per column based on value (number)
我正在尝试根据给定的值实现每列递增的东西。
喜欢,
if A1 = "ABC" and B1 = 3 then C1 = "ABC", D1 = "ABC" and E1 = "ABC".
If A1 = "ABC" and B1 = 1 then C1 = "ABC"
If A1 = "ABC" and B1 = 2 then C1 = "ABC" and D1 = "ABC"
我还没有尝试过任何东西,我只有逻辑。
我看过一些代码,但它是 VB,我试图实现的是使用公式。
预期输出就是上面描述的。
谢谢
Excel
在单元格 C1
中:
=IF(COLUMN(A1)<=$B1,$A1,"")
根据 B1
向右拖动直到您认为必须达到的最大值
Google 电子表格
在单元格 C1
中:
=ARRAYFORMULA(IF((COLUMN(C1:KN1)-2)<=B1,A1,""))
将 KN1
更改为最大的那一列并输入。
您可以用 Google 张一次性完成:
=ArrayFormula(if(column(C1:indirect(address(counta(A:A),max(B:B)+2)))>B:B+2,"",A:A))
还有
=ArrayFormula(if(A:A="","",split(rept(A:A&"|",B:B),"|")))
但这限制为每行 50K 个字符。
我正在尝试根据给定的值实现每列递增的东西。 喜欢,
if A1 = "ABC" and B1 = 3 then C1 = "ABC", D1 = "ABC" and E1 = "ABC".
If A1 = "ABC" and B1 = 1 then C1 = "ABC"
If A1 = "ABC" and B1 = 2 then C1 = "ABC" and D1 = "ABC"
我还没有尝试过任何东西,我只有逻辑。
我看过一些代码,但它是 VB,我试图实现的是使用公式。
预期输出就是上面描述的。
谢谢
Excel
在单元格 C1
中:
=IF(COLUMN(A1)<=$B1,$A1,"")
根据 B1
Google 电子表格
在单元格 C1
中:
=ARRAYFORMULA(IF((COLUMN(C1:KN1)-2)<=B1,A1,""))
将 KN1
更改为最大的那一列并输入。
您可以用 Google 张一次性完成:
=ArrayFormula(if(column(C1:indirect(address(counta(A:A),max(B:B)+2)))>B:B+2,"",A:A))
还有
=ArrayFormula(if(A:A="","",split(rept(A:A&"|",B:B),"|")))
但这限制为每行 50K 个字符。