我正在尝试编写一个简单的函数,如果value为零,则给出band 1 乐队2如果在0到150k之间 乐队3如果在150到500k之间,依此类推
如果值为零,我只得到1,其他一切都是2,即使我输入了1000万
请帮忙
Function Band(ARR)
Select Case ARR
Case Is = 0
Band = 1
Case Is >= 0.1 And ARR <= 150000
Band = 2
Case Is >= 150000.01 And ARR <= 500000
Band = 3
Case Is >= 500000.01 And ARR <= 1500000
Band = 4
Case Is >= 1500000.01
Band = 5
Case Else
Band = 6
End Select
End Function
答案 0 :(得分:4)
VBA Select Case&#39;短路&#39; (一旦满足匹配标准,则不会检查其他案例),因此不需要和运营商。
Function Band(ARR)
Select Case true
Case ARR < 0
Band = 6
Case arr = 0
Band = 1
Case arr <= 150000
Band = 2
Case arr <= 500000
Band = 3
Case arr <= 1500000
Band = 4
Case else
Band = 5
End Select
End Function
答案 1 :(得分:4)
您可以使用“收件人”关键字指定范围。 See here for more information.
Function Band(arr)
Select Case arr
Case 0
Band = 1
Case 0.01 To 150000
Band = 2
Case 150000.01 To 500000
Band = 3
Case 500000.01 To 1500000
Band = 4
Case arr >= 1500000.01
Band = 5
Case Else
Band = 6
End Select
End Function