Excel vba循环语句简答题

如何用VBA循环语句完成下面程序
企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?

if 语句判断下,输入用Application.InputBox。不过20w,40w,60w,100w下限时,低于对应下限的部分是按照下限10%计算还是就是固定10w?
就是20~40w,低于20w部分用20w的10%计算,还是就是只按照10w的10%计算?规则没怎么清楚。。

以下代码为超过20w以上时,低于下限的部分按照下限计算10%部分


Sub getprofit()
  s = Application.InputBox("请输入当月利润", "提示")

  If TypeName(s) = "Boolean" Then Exit Sub '点了取消退出计算

  If IsNumeric(s) Then
    m = CDbl(s)
    If m <= 100000 Then
       profit = m * 0.1
    ElseIf m <= 200000 Then
      profit = 100000 * 0.1 + (m - 100000) * 0.075
    ElseIf m <= 400000 Then
      profit = 200000 * 0.1 + (m - 200000) * 0.05
    ElseIf m <= 600000 Then
      profit = 400000 * 0.1 + (m - 400000) * 0.03
    ElseIf m <= 1000000 Then
      profit = 600000 * 0.1 + (m - 600000) * 0.015
    Else
      profit = 1000000 * 0.1 + (m - 1000000) * 0.01
    End If
    MsgBox "奖金总数:" & profit
  
  Else
    MsgBox "请时输入数字"
  End If

End Sub

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632