Excel技术问询:如何对比三列数据并显示数值最高的仓库
解决Excel多仓库库存最大值对应仓库的问题
单个最大值场景(无并列)
假设仓库名称在第一行(A1="A仓库", B1="B仓库", C1="C仓库"),对应库存数据从第二行开始(A2、B2、C2为第一条产品的三个仓库库存),要在D2单元格显示库存最高的仓库名,可使用以下公式:=INDEX($A$1:$C$1,MATCH(MAX(A2:C2),A2:C2,0))
- 逻辑说明:
MAX(A2:C2)提取三个仓库的最大库存值,MATCH定位该最大值在A2:C2中的位置,INDEX从表头行取出对应位置的仓库名称。
多个仓库并列最大值场景
如果存在多个仓库库存同为最大值,需要同时显示所有对应仓库名,可使用TEXTJOIN函数(适用于Excel 2019及以后版本):=TEXTJOIN(", ",TRUE,IF(A2:C2=MAX(A2:C2),$A$1:$C$1,""))
注意:这是数组公式,输入完成后需按 Ctrl+Shift+Enter 确认(部分新版Excel支持自动识别数组,直接回车即可)。
为什么嵌套IF函数容易失败?
用嵌套IF的写法(如=IF(A2>MAX(B2,C2),"A仓库",IF(B2>MAX(A2,C2),"B仓库","C仓库"))),仅能处理单个最大值的情况,且当出现并列最大值时,会错误地只返回最后一个仓库名,无法覆盖所有场景,逻辑严谨性不足。
内容的提问来源于stack exchange,提问作者Zedd
相关产品推荐
相关产品推荐

