Excel公式详解=INDEX(考勤工作状态统计!A:A,SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1)))&""这个公式哪个高手能用超级普通的普通话帮我解释解释额.实在看不懂
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 01:13:18
Excel公式详解=INDEX(考勤工作状态统计!A:A,SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1)))&""这个公式哪个高手能用超级普通的普通话帮我解释解释额.实在看不懂
Excel公式详解
=INDEX(考勤工作状态统计!A:A,SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1)))&""
这个公式哪个高手能用超级普通的普通话帮我解释解释额.实在看不懂
这个公式放到Excel表里以后必须按ctrl+Shift+回车 才能生效,这是为什么?
Excel公式详解=INDEX(考勤工作状态统计!A:A,SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1)))&""这个公式哪个高手能用超级普通的普通话帮我解释解释额.实在看不懂
该公式虽然只有100多个字符,但涉及到的知识点很多,对于这种长公式,首先需要将公式一层层分解来理解,对于每个公式,可以用光标选中完整公式后按F9查看结果.
这个公式涉及到绝对引用、相对引用,数组,及5个函数 INDEX,SMALL,IF,LOOKUP,ROW
单单在百度知道通过文字很难完整描述清楚,说一下大致的思路及所使用到知识点的相关链接,希望能提供一些帮助.
一、先了解数组公式,输入公式后需要按Ctrl+Shift+Enter.
推荐两篇文章:
二、对公式进行分解
第一个函数:INDEX(array,row_num,[column_num])
=INDEX(考勤工作状态统计!A:A,SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1)))&""=index(array,row_num)&""
其中:
array:考勤工作状态统计!A:A
row_num:SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1))
第二个函数:SMALL(array,k)
=SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8),ROW(A1))=small(array,k)
其中:
array:IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8)
k:ROW(A1)
第三个函数:IF(logical_test,[value_if_true],[value_if_false])
=IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4),ROW($5:$999),4^8)=if(logical_test,value_if_true,value_if_false)
其中:
logical_test:考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4""),C$4:C4)
value_if_true:ROW($5:$999)
value_if_false:4^8
第四个函数:LOOKUP(lookup_value,lookup_vector,[result_vector])
=LOOKUP(1,0/(C$4:C4""),C$4:C4)=lookup(lookup_value,lookup_vector,result_vector)
其中:
lookup_value:1
lookup_vector:0/(C$4:C4"")
result_vector:C$4:C4
第五个函数:ROW([reference])
三、几个链接解惑
LOOKUP(1,0/(条件),查找数组或区域),这是lookup的一个经典的条件查找,相关文章参考:【公式解析系列】之LOOKUP(2,1/(条件),查找数组或区域)
INDEX(区域,SMALL(IF(条件,行号数组,4^8),ROW(A1)))区域大小及IF第三参数的选择问题
公式里有{ 符号的话,就必须用ctrl+shift+回车才能生效。你这公式里有吗?有!最开头有。。。我没复制进来,完整的是这样的 这个是点一下单元格就有,可是进去要修改的时候就没了 {=INDEX(考勤工作状态统计!A:A,SMALL(IF(考勤工作状态统计!$D$5:$D$999=LOOKUP(1,0/(C$4:C4<>""),C$4:C4),ROW($5:$999),4^8),ROW...
全部展开
公式里有{ 符号的话,就必须用ctrl+shift+回车才能生效。你这公式里有吗?
收起
稍微扒了一下,把每个函数分别捋一遍,也没看懂。
index函数,small函数,if函数,lookup函数,row函数,至少lookup里面有问题。