Excel 数据循环
Excel loop for data
假设这是我的 table
kit component
aa a
aa b
aa c
aa d
aa e
ab b
ab f
ab e
ab l
我想要实现的是某种公式,它允许我查询整个 table 并提取特定套件的每个组件,因此它看起来像这样;
kit
aa
Component
a
b
c
d
e
如果数据始终按套件排序,则以下公式有效:
=IF(ROW(1:1)>COUNTIF(A:A,$D),"",INDEX(B:B,MATCH($D,A:A,0)+ROW(1:1)-1))
尽可能多地复制它。
如果您的数据未排序,您将需要使用此公式:
=IFERROR(INDEX($B:$B,AGGREGATE(15,6,ROW($A:$A)/($A:$A=$D),ROW(1:1))),"")
聚合是数组类型的公式,因此应避免完整的列引用。如果你的数据集很大,这个公式会减慢计算时间。
最好使用第一个并对数据进行排序,但如果不行,第二个也行。
假设这是我的 table
kit component
aa a
aa b
aa c
aa d
aa e
ab b
ab f
ab e
ab l
我想要实现的是某种公式,它允许我查询整个 table 并提取特定套件的每个组件,因此它看起来像这样;
kit
aa
Component
a
b
c
d
e
如果数据始终按套件排序,则以下公式有效:
=IF(ROW(1:1)>COUNTIF(A:A,$D),"",INDEX(B:B,MATCH($D,A:A,0)+ROW(1:1)-1))
尽可能多地复制它。
如果您的数据未排序,您将需要使用此公式:
=IFERROR(INDEX($B:$B,AGGREGATE(15,6,ROW($A:$A)/($A:$A=$D),ROW(1:1))),"")
聚合是数组类型的公式,因此应避免完整的列引用。如果你的数据集很大,这个公式会减慢计算时间。
最好使用第一个并对数据进行排序,但如果不行,第二个也行。