Excel公式返回数字在数字网格中的位置
假设我有4个数字,例如4,10,15,20 我需要写一个公式,接受数字输入,并告诉我它在数字范围内的位置:Excel公式返回数字在数字网格中的位置,excel,excel-formula,vba,Excel,Excel Formula,Vba,假设我有4个数字,例如4,10,15,20 我需要写一个公式,接受数字输入,并告诉我它在数字范围内的位置: 4、10、15和20 因此,根据输入的数字,我需要返回值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 <= 1
- 4、10、15和20
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
my_numb=ActiveCell
选择我的案例
Case Is您可以使用VLOOKUP实现同样的功能,只要您创建一个具有所需范围的“查找”表,如:
注意VLOOKUP公式末尾的TRUE,它返回最后一个结果,即<查找值。通常情况下,这个选项是无用的——这是为数不多的有用选项之一
与VBA方法相比,我更喜欢这种方法,因为它更易于更新,并且更易于初学者和中级Excel人员访问。最简单的方法是使用if-elseif-end-if语句。有两个范围的选择案例可能会变得相当复杂
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
x(0)=4
x(1)=10
x(2)=15
x(3)=20
对于k=0到3
如果x(k)4和x(k),则工作表函数MATCH
可以执行此操作。除了第一种情况(当