发布网友 发布时间:2022-04-21 15:28
共3个回答
热心网友 时间:2022-07-10 09:25
方法还是很多的,这里我不觉得index是比较好的选择方案, 非连续区间写起来比较麻烦,加上一个前置条件只查询样品编号对应的列即可。
=CONCAT(IF(($C$3:$Q$3="样品编号")*(C4:Q4=2),$C$2:$Q$2,""))
数组公式,同时按下Ctrl+Shift+Enter结束输入。
追问您好,您这个函数确实可以。还想咨询一下,如图所示,U4处输入函数,满足:如果T4等于R4或S4中的一个,那么在前面找出对应等级和价格的样品编号。
说明:之前准备用Index,match以单价查找的。都是考虑到本列中可能出现A、B等级组单价一样的,必须找到对应的*或B级的单价才可以。
同样的公式使用if来写就行,就是你的条件有点烦。
=MIN(IF((($E4:$Q4=$R$2)*($D4:$P4=$R4)*($R4=$T4))+(($E4:$Q4=$S$2)*($D4:$P4=$S4)*($S4=$T4)),$C4:$O4,""))
如果编号是数字格式,那么外面就是用min来套,如果是文本格式,那么跟前面公式一样使用CONCAT来套。
热心网友 时间:2022-07-10 09:25
提取满足条件的数据,需要使用查找类函数,用sumif函数,数组函数选择错误,
match函数也只能作为辅助函数,
具体函数为index或者lookup函数。
热心网友 时间:2022-07-10 09:26
公式为:
=INDEX(1:1,MIN(IF((C2:O2=2)*(MOD(COLUMN(C:O),3)=0),COLUMN(C:O))))
如图所示:
注:如果不出结果尝试按ctrl+shift+enter产生花括号。