Excel公式技巧56:获取最大值/最小值所在的单元格地址 |
您所在的位置:网站首页 › excel表中找最大值与最小值的函数 › Excel公式技巧56:获取最大值/最小值所在的单元格地址 |
学习Excel技术,关注微信公众号: excelperfect 在《Excel公式技巧54:在多个工作表中查找最大值最小值》中,我们在MAX/MIN函数中使用多工作表引用来获取最大值/最小值。在《Excel公式技巧55:查找并获取最大值最小值所在的工作表》中,我们更进一步,获取最大值/最小值所在的工作表名称。本文来讲解如何利用公式获取最大值/最小值在哪个单元格。 示例工作表数据如下图1所示,我们可以使用MAX/MIN函数获取工作表数据的最大值/最小值,并且由于数据较少,可以清楚地看出最大值所在的单元格为B2,最小值位于单元格A2。 ![]() 图1 可以使用ADDRESS函数来获取单元格地址,但关键是要传递给该函数合适的行列参数。在单元格D7中输入公式: =ADDRESS(INDEX(ROW(A1:A4),SUMPRODUCT((A1:D4=C7)*(ROW(A1:D4)))),INDEX(COLUMN(A1:D1),SUMPRODUCT((A1:D4=C7)*(COLUMN(A1:D4)))),1,1) 得到最大值所在的单元格地址: B2 公式中: ROW(A1:A4) 解析为: {1;2;3;4} ROW(A1:D4) 解析为: {1,1,1,1;2,2,2,2;3,3,3,3;4,4,4,4} COLUMN(A1:D1) 解析为: {1,2,3,4} COLUMN(A1:D4) 解析为: {1,2,3,4;1,2,3,4;1,2,3,4;1,2,3,4} A1:D4=C7 解析为: {FALSE,FALSE,FALSE,FALSE;FALSE,TRUE,FALSE,FALSE;FALSE,FALSE,FALSE,FALSE;FALSE,FALSE,FALSE,FALSE} 将上述中间数组代入: SUMPRODUCT((A1:D4=C7)*(ROW(A1:D4))) 得到: SUMPRODUCT({FALSE,FALSE,FALSE,FALSE;FALSE,TRUE,FALSE,FALSE;FALSE,FALSE,FALSE,FALSE;FALSE,FALSE,FALSE,FALSE}*{1,1,1,1;2,2,2,2;3,3,3,3;4,4,4,4}) 得到: SUMPRODUCT({0,0,0,0;0,2,0,0;0,0,0,0;0,0,0,0}) 结果为: 2 代入第一个INDEX函数中得到: INDEX(ROW(A1:A4),2) 转换为: INDEX({1;2;3;4},2) 得到: 2 同样,第二个INDEX函数的结果为2,代入ADDRESS函数得到: ADDRESS(2,2,1,1) 结果为: B2 同理,在单元格D8中输入公式: =ADDRESS(INDEX(ROW(A1:A4),SUMPRODUCT((A1:D4=C8)*(ROW(A1:D4)))),INDEX(COLUMN(A1:D1),SUMPRODUCT((A1:D4=C8)*(COLUMN(A1:D4)))),1,1) 得到结果: A2 最终结果如下图2所示。 ![]() 图2 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。 欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |