假设我有4个数字,例如4,10,15,20Excel公式返回数字适合数字格的位置
我需要它的数量适合于写一个公式,接受一个数字输入,并告诉我范围:
- < = 4
- > 4和< = 10
- > 10和< = 15
- > 15和< = 20
- > 20
所以根据输入的号码,我需要的1,2,3,4,或5
返回值,我可以写一个VBA函数,但认为有可能是已经可以方便的功能... 。
假设我有4个数字,例如4,10,15,20Excel公式返回数字适合数字格的位置
我需要它的数量适合于写一个公式,接受一个数字输入,并告诉我范围:
所以根据输入的号码,我需要的1,2,3,4,或5
返回值,我可以写一个VBA函数,但认为有可能是已经可以方便的功能... 。
在将这个宏
my_numb = ActiveCell
Select Case my_numb
Case Is <= 4
my_val = 1
Case Is <= 10
my_val = 2
Case Is <= 15
my_val = 3
Case Is <= 20
my_val = 4
Case Is > 20
my_val = 5
Case else
my_val = "error"
End Select
ActiveCell.Offset(0, 1) = my_val
您可以使用VLOOKUP来实现同样的事情,只要你创建一个“查找”表,你需要像范围:
注意VLOOKUP公式结尾的TRUE,它返回最后一个结果<的查找值。通常情况下,这个选项是无用的 - 这是少数有用的选项之一。
我更喜欢这个VBA方法,因为它更容易更新和访问更多的初学者和中级Excel民间。
好主意,谢谢! – fatdragon
最简单的方法是使用if-elseif-end if语句。具有两个范围的Select Case可以相当复杂。
x(0) = 4
x(1) = 10
x(2) = 15
x(3) = 20
For k = 0 to 3
If x(k) <= 4 Then
y=1
elseif x(k) > 4 And x(k) <= 10 Then
y=2
elseif ...
...
end if
Next k
工作表函数'MATCH'可以做到这一点。 –
看起来像MATCH会工作,除了第一种情况(当它是<= 4)时,它返回#N/A。我可以通过额外的IF功能来处理这个问题。谢谢! – fatdragon