Excel sheet 基于总金额的折扣和折扣间隔

Excel sheet with discount based on total amount with discount intervals

我正在制作 Excel 电子表格,我需要根据总金额计算折扣。

将有 2 个(如果不计算折扣则为 3 个)折扣级别。
例如:
$0-$1000 优惠 0%
$1001-$2000 享 10% 折扣
`>2001 美元可享受 20% 的折扣

诀窍是我需要给定的折扣只适用于给定的时间间隔。 (即 3000 美元的订单将是 1000 美元 + 900 美元 + 800 美元)

有没有办法用公式或在 Visual Basic 中做到这一点?

我一直找不到这样的问题,但如果有的话请告诉我。

Dim MyVal as Long
Dim Discount as Long
MyVal = Range("A1").value

If MyVal >= 0 AND MyVal <=1000 Then
    'Do Nothing
EndIf
If MyVal >= 1001 AND MyVal <=2000 Then
    Discount = MyVal * .1
    MyVal = MyVal - Discount
EndIf
If MyVal >=2001 Then
    Discount = MyVal * .2
    MyVal = MyVal - Discount
EndIf

Msgbox MyVal

只要三层,这个简单的嵌套 IF 就可以工作:

=IF(A1>1000,1000+IF(A1>2000,900+(A1-2000)*0.8,(A1-1000)*0.9),A1)