发布网友 发布时间:2022-04-24 15:47
共4个回答
热心网友 时间:2023-10-20 10:57
推荐做法:
对同类数据进一步细分,比如 A-1,可以细分为 A-1-1,A-1-2,A-1-3.....总之尽可能做到唯一性。
否则的话(以A类为例):
找到 “A-1”的起始位置(Match函数);
然后依次向下偏移引用;
G11=INDIRECT("D"&(MATCH("A-1",C:C,0)+F11-1))
基于偏移的引用有个缺点,一旦数据出现无规律混合就必然引用到错误数据,比如"A-1"后面紧接着"B-1",
因此建议还是从数据源上去优化这些需要统计的信息,比如加上时间列以及让同类型的数据都有唯一的标识(比如图中的重复的A-1),当然,如果能保证数据都有相同的输入顺序则不必担心。
热心网友 时间:2023-10-20 10:57
G11=INDEX($D:$D,SMALL(IF($B$3:$B$100=LOOKUP("座",$G$9:G$9),ROW($A$3:$A$100),65536),ROW(A1)))&""
数组公式,同时按CTRL SHIFT 回车键,下拉
H11=INDEX($D:$D,SMALL(IF($B$3:$B$100=LOOKUP("座",$G$9:H$9),ROW($A$3:$A$100),65536),ROW(B6)))&""
数组公式,同时按CTRL SHIFT 回车键,下拉
G11,H11,复制到I11,下拉即可
追问感谢,还想问一下,编号的条件用不到吗,实际数据要更复杂,涉及不同项目不同类型数据,感觉得用编号和项目2个条件才能确定唯一的一组数。
在整体所有数据中,数据列确定,数据行不确定,所以是不是要直接用“1-1001-Q1”,而不是B2这种坐标。
而且数据在Sheet1,结果填到Sheet2中,
热心网友 时间:2023-10-20 10:58
我这个方法慢了点,但容易理解一些;
首先做两个辅助列,到时候隐藏即可;
L列输入公式:=COUNTIF($C$3:C3,C3),意思是从C3开始找他出现的次数,回车双击单元格自动填充;
M列输入:=B3&L3,意思是把B列跟E列连一起,变成A1;
在G11单元格输入公式:=LOOKUP(1,0/(($C:$C="A-1")*($M:$M=$G$9&$F11)),$D:$D)
意思是,当C列=A-1时,当M列=A1时,找出D列符合的数值;
在H11单元格输入公式:=LOOKUP(1,0/(($C:$C="A-2")*($M:$M=$G$9&$F11)),$D:$D)
在I11单元格输入公式:=LOOKUP(1,0/(($C:$C="B-1")*($M:$M=$I$9&$F11)),$D:$D)
在J11单元格输入公式:=LOOKUP(1,0/(($C:$C="B-2")*($M:$M=$I$9&$F11)),$D:$D)
下拉即可;
热心网友 时间:2023-10-20 10:58
G11:
=INDEX($D:$D,SMALL(IF($B$3:$B$32=LOOKUP("做",$G$9:G$9),ROW($3:$32)),$F11+(COLUMN()-LOOKUP(1,0/($G$9:G$9<>""),COLUMN($G$9:G$9)))*5))
ctrl+shift+回车,右拉、下拉