想知道我是否可以获得帮助以获得正确的公式,以基于其售出的价格找出comm%
。
基本上,有两个电子表格。
第一个是我们的价格网格,以显示委员会将会是什么:
Product - 20% - 15% - 10%
Widget 1 - 3990 - 3490 - 3090
Widget 2 - 4990 - 4490 - 4090
Widget 3 - 5990 - 5490 - 5090
第二个电子表格会列出销售的产品以及销售的价格:
Widget 2 - $4690
Widget 3 - $5100
Widget 1 - $4000
我在想INDEX/MATCH
。我可以正确地MATCH
找到正确的行,但我不确定如何将该价格范围查找纳入公式。
在我上面给出的例子中,佣金应该是15%,10%&分别为20%。
需要创建一个与产品匹配的公式,然后获取售出的价格并将其与其匹配的列匹配,并为该列提供%。
我花了几周的时间搜索网络,我只能在那里找到一半。找出产品所在行的MATCH很简单,价格匹配让我感到难过。
感谢。
答案 0 :(得分:3)
您可以使用很少使用的Hlookup函数,使用它的range_lookup选项来解决这个问题。唯一的要求是您将佣金数据从低%重新排序到高%。像这样:
Product 10% 15% 20%
Widget 1 3090 3490 3990
Widget 2 4090 4490 4990
Widget 3 5090 5490 5990
如果您已完成此操作,则可以使用此公式获取正确的佣金
=OFFSET(Sheet1!$A$1;0;MATCH(HLOOKUP(INT(SUBSTITUTE(B1; "$"; ""));INDIRECT("Sheet1!"&MATCH(A1;Sheet1!$A:$A ) & ":" & MATCH(A1;Sheet1!$A:$A ));1; TRUE);INDIRECT("Sheet1!"&MATCH(A1;Sheet1!$A:$A ) & ":" & MATCH(A1;Sheet1!$A:$A)) )-1)
这是细分:
将输入格式化为整数(佣金数据为int,值为$)
SUBSTITUTE(B1; "$"; "")
使用输入将Hlookup的参考行放在一起。我们使用indirect来添加sheetname和":"参考。
INDIRECT("Sheet1!"&MATCH(A1;Sheet1!$A:$A ) & ":" & MATCH(A1;Sheet1!$A:$A ))
使用Hlookup查找匹配值:
HLOOKUP(INT(SUBSTITUTE(B1; "$"; ""));INDIRECT("Sheet1!"&MATCH(A1;Sheet1!$A:$A ) & ":" & MATCH(A1;Sheet1!$A:$A ));1; TRUE)
在水平匹配函数中使用找到的值来查找已使用的列,并使用减1:
MATCH(<hlookup>; INDIRECT("Sheet1!"&MATCH(A1;Sheet1!$A:$A ) & ":" & MATCH(A1;Sheet1!$A:$A))) - 1
使用偏移量查找匹配值
Offset(Sheet1!$A$1;0; <match>)