我正在尝试使用帮助列根据某些条件(最小临时/最大温度和允许的最大温度列)对表进行排序,但是我无法使其工作,它不会必须使用辅助列,但这是我尝试这样做的方式。
我想要获得的是红色的预期结果
我的l2(向下拖动)是
=COUNTIFS(B$2:B$11,"<="&$B2)
我的J2(向下拖动)是
= INDEX($ B $ 2:$ B $ 10 MATCH(ROWS($ I $ 2:I 2),$ I $ 2:$ I $ 8,0))
试图做
=COUNTIFS(B$2:B$11,"<="&$B2,B$2:B$11,"<="&$G$3)
我想考虑g3,g4,g5中的值, 有序列表中的第一个项目(月)(预期结果)是按升序(从低到大)小于或等于g3的项目。 列表中的第二项是&gt;比g3但小于g4,并且G5中指定的项目有限
答案 0 :(得分:1)
为了处理重复的值,
辅助列用于制作唯一键,
其中包括月份编号,并使用SMALL()
函数对它们进行排序。
假设A2:A11
中的月份名称是文本(不是日期值,格式为“MMM”)
J2
中的数组公式并向下拖动到J11
=SMALL(MONTH(DATEVALUE("1"&$A$2:$A$11&" 2001"))+ROUND(($B$2:$B$11+300)*1000,-2),ROW(I2)-ROW($I$1))
假设温度值四舍五入到小数点后的一位数,
调整值(+300
)以处理负温度,
向左移动(*1000
)并添加月份编号。
D2
:
=IF(E2<=$H$3,TEXT(DATE(2001,MOD($J2,100),1),"MMM")," ")
E2
:
=IF(ROUND($J2/1000-300,1)<=$H$3,ROUND($J2/1000,1)-300," ")
D3
并向下拖动到D11
:
=IF(OR(E3<=$H$3,AND(E3>$H$3,E3<$H$4,COUNTIF(E$2:E2,">"&$H$3)<$H$5)),TEXT(DATE(2001,MOD($J3,100),1),"MMM")," ")
E3
并向下拖动到E11
:
=IF(OR(ROUND($J3/1000-300,1)<=$H$3,AND(ROUND($J3/1000-300,1)>$H$3,ROUND($J3/1000-300,1)<$H$4,COUNTIF(E$2:E2,">"&$H$3)<$H$5)),ROUND($J3/1000-300,1)," ")
D2:D11
中的可选条件格式:
E2:E11
中的可选条件: