Excel复杂条件计算:物品与空间非重复尺寸适配验证方案咨询
物品适配固定空间的Excel验证方案
嘿,我来帮你搞定这个尺寸匹配的问题!你要验证不可弯折的物品能不能放进指定空间,核心要求就是空间的三个尺寸(宽/深/高)必须和物品的三个维度一一对应,每个空间尺寸只能用一次,而且物品对应的维度不能超过空间尺寸对吧?
先假设我们把数据放在这些单元格(你可以根据自己的表格位置随便调整):
- 空间的三个尺寸:
A1(宽)、B1(深)、C1(高) - 物品的三个维度:
A2(宽)、B2(深)、C2(高)
核心思路
其实就是检查物品三个维度的所有6种排列组合(毕竟3个维度的全排列有6种可能),只要其中任意一种组合能让物品的每个维度都≤对应的空间尺寸,就说明这个物品能放进去。
直接易懂的公式方案
我先给你一个最直观的公式,不用绕弯子,直接把所有6种可能都列出来检查:
=OR( AND(A2<=A1,B2<=B1,C2<=C1), AND(A2<=A1,B2<=C1,C2<=B1), AND(A2<=B1,B2<=A1,C2<=C1), AND(A2<=B1,B2<=C1,C2<=A1), AND(A2<=C1,B2<=A1,C2<=B1), AND(A2<=C1,B2<=B1,C2<=A1) )
这个公式会逐一核对每一种维度匹配的情况,只要有一组满足条件,就返回TRUE(能放下),否则返回FALSE(放不下)。输入的时候,Excel 365/2021版本直接回车就行,旧版的话需要按Ctrl+Shift+Enter确认成数组公式。
更简洁的通用公式(适合扩展)
如果你觉得上面的公式太长,或者以后可能要增加维度数量,这个更简洁的版本会更实用:
=SUMPRODUCT(--(MMULT(--(PERMUT(A2:C2,3)<=TRANSPOSE(A1:C1)),ROW(A1:C1)^0)=3))>0
简单解释下这个公式的逻辑:
PERMUT(A2:C2,3)自动生成物品三个维度的所有排列组合TRANSPOSE(A1:C1)把空间尺寸转置,方便和排列组合逐一对比MMULT用来判断每组排列里的三个维度是否都≤对应的空间尺寸,返回结果为3就代表这组排列完全符合要求SUMPRODUCT统计符合要求的组合数量,只要数量大于0,就说明物品能放进空间
小提醒
- 一定要保证所有尺寸的单位统一哦,比如都是厘米或者英寸,不然对比出来的结果根本没意义
- 旧版Excel用第二个公式的时候,记得按
Ctrl+Shift+Enter来触发数组计算
内容的提问来源于stack exchange,提问作者Exelus
相关产品推荐
相关产品推荐

