2014-01-16 47 views
0

假设我有4个数字,例如4,10,15,20Excel公式返回数字适合数字格的位置

我需要它的数量适合于写一个公式,接受一个数字输入,并告诉我范围:

  • < = 4
  • > 4和< = 10
  • > 10和< = 15
  • > 15和< = 20
  • > 20

所以根据输入的号码,我需要的1,2,3,4,或5

返回值,我可以写一个VBA函数,但认为有可能是已经可以方便的功能... 。

+0

工作表函数'MATCH'可以做到这一点。 –

+0

看起来像MATCH会工作,除了第一种情况(当它是<= 4)时,它返回#N/A。我可以通过额外的IF功能来处理这个问题。谢谢! – fatdragon

回答

0

在将这个宏

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 
1

您可以使用VLOOKUP来实现同样的事情,只要你创建一个“查找”表,你需要像范围:

enter image description here

注意VLOOKUP公式结尾的TRUE,它返回最后一个结果<的查找值。通常情况下,这个选项是无用的 - 这是少数有用的选项之一。

我更喜欢这个VBA方法,因为它更容易更新和访问更多的初学者和中级Excel民间。

+0

好主意,谢谢! – fatdragon

0

最简单的方法是使用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 
相关问题