excel 需要计算细胞内容物以生成编织图案

wwwo4jvm  于 2023-01-27  发布在  其他
关注(0)|答案(3)|浏览(118)

所以这需要一点细节:
n,X,X,X,n位于单元格B5到F5中
我需要获得以下输出:
第1次、第3次、第1次
对于这一行。
现在n和X代表针织中的针脚,“n”是背景色,“x”是正面色。
存在表示行和针脚的单元格B5:F12的阵列,因此每行将具有不同的针脚排列或背景颜色。
我需要避免使用vba,因为这需要尽可能稳定,用户是我90岁的妈妈:),她所需要的只是一个输入名称和布局的地方(我已经完成了)和每行的模式列表(也进行了排序)。
我已经开始考虑这样的事情:

if(B5=C5,1&B5,"")

但是给定的组合数会变得很长。
有什么想法吗?干杯。

brccelvz

brccelvz1#

您可以尝试:

H5中的公式:

=BYROW(B5:F12,LAMBDA(x,LET(z,REDUCE(VSTACK(TAKE(x,,1),1),DROP(x,,1),LAMBDA(a,b,IF(b=@TAKE(a,,-1),IF(COLUMNS(a)=1,VSTACK(b,TAKE(a,-1)+1),HSTACK(DROP(a,,-1),VSTACK(b,DROP(TAKE(a,,-1),1)+1))),HSTACK(a,VSTACK(b,1))))),TEXTJOIN(",",,DROP(z,1)&TAKE(z,1)))))

我看看能不能把字节数降一点...

    • 编辑:**

打了相当多的高尔夫球后(降到119),我想出了:

=BYROW(B5:F12,LAMBDA(x,MID(REDUCE("",x,LAMBDA(a,b,IF(RIGHT(a)=b,LEFT(a,LEN(a)-2)&1+LEFT(RIGHT(a,2)),a&",1")&b)),2,99)))

虽然比第一个少动,但由于每种编织模式只有〈10列的事实,所以可能。

uinbv5nw

uinbv5nw2#

如果你的母亲没有最新的Excel(有LAMBDA等),这里有一个替代@JvdV的答案,它只使用LET,SEQUENCE和FILTER。
它只接受单行,所以您需要向下填充公式。

=LET(p,LOWER(B5:F5),c,COLUMNS(p),s,SEQUENCE(,c),
     a,IF(s=c,c,IF(INDEX(p,,s)<>INDEX(p,s+1),s,0)),
     b,FILTER(a,a>0),t,SEQUENCE(,COLUMNS(b)),
     n,IF(t=1,INDEX(b,,t),INDEX(b,,t)-INDEX(b,,t-1)),
     TEXTJOIN(",",TRUE,n & INDEX(p,,b)))

我可以补充一点,它允许在图案中添加一种以上的颜色。

并且使用一点条件格式,这位好女士可以设计她自己的多色图案!

p1tboqfb

p1tboqfb3#

这只是解答的开始,但在单元格“B6”中,您可以输入以下公式:

=(IF(B5=A5,A6+1,1))

这将生成以下列表:

B    C    D    E    F

5: n    x    x    x    n
6: 1    1    2    3    1

从那里,您可以尝试让Subtotal特性工作,基于Max公式,...(正如我所说,这只是一个开始)。

相关问题