|
附件已更新
以B6公式为例,=MAX(MMULT(INDIRECT(TEXT(MATCH(2,COUNTIF(INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),B5),),"00")&"!a9:b39"),{1;100000}))-B5*10^5
1.INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),此条通过INDIRECT函数和TEXT函数会获得从1-12月共12个工作表的B列,即{"01!B:B";"02!B:B";"03!B:B";"04!B:B";"05!B:B";"06!B:B";"07!B:B";"08!B:B";"09!B:B";"10!B:B";"11!B:B";"12!B:B"}
2.COUNTIF(INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),B5) 通过条件计数函数COUNTIF得到B5这个最大值在哪一个工作表出现过
3.MATCH(2,COUNTIF(INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),B5),) 通过MATCH函数得到最大值所在工作表是第几个表
4.INDIRECT(TEXT(MATCH(2,COUNTIF(INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),B5),),"00")&"!a9:b39") 再次通过INDIRECT函数得到需要的工作表的A9:B39数据区域
5.MMULT(INDIRECT(TEXT(MATCH(2,COUNTIF(INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),B5),),"00")&"!a9:b39"),{1;100000}) 通过MMULT函数得到数据区域中的数值乘上100000,最后得到数值加上日期,其中包括了最大值以及它的日期
6.MAX(MMULT(INDIRECT(TEXT(MATCH(2,COUNTIF(INDIRECT(TEXT({1;2;3;4;5;6;7;8;9;10;11;12},"00")&"!B:B"),B5),),"00")&"!a9:b39"),{1;100000})) 此条通过MAX提取出最大值和它的日期
7.-B5*10^5 这个得到最大值乘上100000,MAX()-B5*10^5 就得到了最大值对应的日期了
其它的原理相同,包括最小值日期,C列、D列都是这个原理,你自己琢磨一下
001.rar
(12.32 KB, 下载次数: 37)
|
|