我有一个函数,从列中提取日期,从行中提取一个时间,其中名称与该列/行中的单元格匹配。
它提取我想要的数据,但它将数据从最小到最大排序,而不是将跨列的数据匹配到引用的调用。
我发现这是因为我使用的是“小”函数,但是,当我删除“小”部分时,它并不会提取所有的数据。有人有什么建议吗?
这是我的两个公式
=IFERROR(INDEX('MOS Schedule'!$A$5:$A$33,SMALL(IF('MOS Schedule'!$B$5:$F$33=$B$1,ROW('MOS Schedule'!$A$5:$A$33)-MIN(ROW('MOS Schedule'!$A$5:$A$33))+1),ROWS($B$3:D3))),"")
=IFERROR(INDEX('MOS Schedule'!$B$4:$F$4,SMALL(IF('MOS Schedule'!$B$5:$F$33=$B$1,('MOS Schedule'!$B$4:$F$4)-MIN('MOS Schedule'!$B$4:$F$4)+1),ROWS($B$3:C3))),"")以下是源数据:

下面是由我的公式得出的信息:

这就是问题所在:
它是最小到最大的数据排序,但我需要在结果中将数据排列在一起,并且都引用相同的单元格
我需要eac列C和D中的信息来引用表中相同的单元格。我需要C3和C4 (以及最终的C5 )都引用表中相同的单元格。
我希望在C3中看到的是"1/14/19",在D3 "15:00“中,然后在C4”1/14/19“和D4 "15:30”中。。。等
发布于 2019-01-18 04:00:29
使用列G、H和单元格I1:M4作为助手。贴上以下标签:
I4 ----> 1
J4 ----> 2
K4 ----> 3
L4 ----> 4
M4 ----> 5在E1单元格中插入(键入)第一个日期值(在本例中为14-Jan)。然后,这些公式:
I5 ----> =IF(COUNTIF('MOS Schedule'!B5:B33,$B$1)=0,"",COUNTIF('MOS Schedule'!B5:B33,$B$1))
I6 ----> =COUNT($I$5:OFFSET($I$5,0,I4-1))然后拖到M列,然后在第一行中列出这些公式:
C4 ----> =INDEX('MOS Schedule'!$B$4:$F$4,MATCH(1,$I$6:$M$6,0))
D4 ----> =INDEX('MOS Schedule'!$A$5:$A$33,MATCH($B$1,OFFSET('MOS Schedule'!$B$5:$B$33,0,MATCH($C4,'MOS Schedule'!$B$4:$F$4,0)-1),0))
F4 ----> 1
G4 ----> =COUNTIF('MOS Schedule'!B5:F33,B1)然后:
C5 ----> =IF(OR(G4=1,G4=""),"",INDEX('MOS Schedule'!$B$4:$F$4,MATCH(F4,$I$6:$M$6,0)))
D5 ----> =IF(OR(G4=1,G4=""),"",IFERROR(INDEX(OFFSET('MOS Schedule'!$A$5:$A$33,MATCH(D4,'MOS Schedule'!$A$5:$A$33,0),0,ROWS('MOS Schedule'!$A$5:$A$33)-MATCH(D4,'MOS Schedule'!$A$5:$A$33,0)+1),MATCH($B$1,OFFSET('MOS Schedule'!$B$5:$B$33,MATCH(D4,'MOS Schedule'!$A$5:$A$33,0),MATCH($C5,'MOS Schedule'!$B$4:$F$4,0)-1,ROWS('MOS Schedule'!$A$5:$A$33)-MATCH(D4,'MOS Schedule'!$A$5:$A$33,0)+1),0)),INDEX('MOS Schedule'!$A$5:$A$33,MATCH($B$1,OFFSET('MOS Schedule'!$B$5:$B$33,0,MATCH($C5,'MOS Schedule'!$B$4:$F$4,0)-1),0))))
F5 ----> =IF(OR(G4=1,G4=""),"",IFERROR(IF(MATCH($B$1,OFFSET('MOS Schedule'!$B$5:$B$33,MATCH(D5,'MOS Schedule'!$A$5:$A$33,0),MATCH(C5,'MOS Schedule'!$B$4:$F$4)-1,ROWS('MOS Schedule'!$A$5:$A$33)-MATCH(D5,'MOS Schedule'!$A$5:$A$33,0)+1),0)>0,F4,""),F4+1))
G5 ----> =IF(G4="","",IF((G4-1)>0,G4-1,""))往下拖..。好了。
想法:
希望能帮上忙。(:
https://stackoverflow.com/questions/54230326
复制相似问题