你有没有注意过MATCH()函数第3个参数除了0以外的值含义是什么。
=INDEX(价格表!$A$1:$I$32,MATCH(A2,价格表!A:A,0),MATCH(B2,价格表!$1:$1,1))
或(避免非数值、空值干扰):
=INDEX(价格表!$B$1:$I$32,MATCH(A2,价格表!A:A,0),MATCH(B2,价格表!$B$1:$I$1,1))
提问说明的条件太少,首重多少?首重费用多少(至少要举例2~到3个地方)?续重费用又是多少?
下面的模拟假设如图J:L列,J列是不同的城市,K列是首重费用,且假设首重为1kg;L列是续重费用。自己根据实际修改吧。
A列是快递单号,B列是送达城市,C列求出快递费:
C2=CEILING(MAX(C2-1,0),0.5)*VLOOKUP(B2,$J$2:$L$4,3,)+VLOOKUP(B2,$J$2:$L$4,2,)
公式分两部分,前一部分求续重费,续重为重量-首重,不足首重时,按0计,再以0.5向上舍入,×2相当于除以0.5,折算多少个0.5。vlookup查出城市对应的续重单价。后一部分用vlookup查出首重费,两部分相加得总的快递费。