Excel公式为小于和大于条件的倍数

显示人口密度状态如下:

Density Status Below 1000 Very Small Below 2000 Small Below 3000 Medium Below 6000 Large At 6000 or Above Very Large 

宋build波:

纽约市的人口密度是4100(这是在A1格)

我认为有可能写这样的Excel公式:

=IFS(A1>=6000, "Very Large", 3000 < A1 < 6000, "Large", 2000 < A1 < 3000, "Medium", 1000 < A1 < 2000, "Small", 1000 < A1, "Very Small")

但是这不起作用。 任何帮助,将不胜感激编写一个公式,返回一个给定的人口,例如A1

你的公式:

 IFS(A1>=6000, "Very Large", 3000 < A1 < 6000, "Large", 2000 < A1 < 3000, "Medium", 1000 < A1 < 2000, "Small", 1000 < A1, "Very Small") 
  1. Ifs(不是我的Excel版本中的一个函数,嵌套的if语句适用于我: =if(test1, Value_If_True, if(test2.....等)不能等到我的老板拿到程序了!

  2. 你不能有两个部分的逻辑testing(例如1000<a1<2000应该是AND(1000<a1, a1<2000)

  3. 没有必要像这样重复这些testing。 如果A1大于或等于6000,则第一个testing评估为真。 如果它不是真的,你不需要重复testing。

  4. 除了语法之外,你的逻辑与你的表不一样。 ( 1000<A1, "Very Small"应该是1000 >A1, "Very Small"

如果我这样做,如果陈述:

 =IF( A1 >=6000, "Very Large", if(A1>=3000 , "Large", if(A1>=2000 , "Medium", if(A1>=1000, "Small", "Very Small") 

在你的excel版本中:

 =IFS( A1 >=6000, "Very Large", A1>=3000 , "Large", A1>=2000 , "Medium", A1>=1000, "Small", "Very Small") 

我不认为你可以做这样的事情:

LowLimit <x <HighLimit

尝试而不是像…

AND(X> LowLimit时,X

AND()将根据二进制AND运算符返回true / false。

你可以像下面这样链接一堆IF:

 =IF(A6>=6000,"Very Large",IF(A6>=3000,"Large",IF(A6>=2000,"Medium",IF(A6>=1000,"Small","Very Small")))) 
 =LOOKUP(A1/1000,{0,1,2,3,6;"Very Small","Small","Medium","Large","Very Large"}) 

如果该值可以是负数,则可以用最小可能数字或-1E+307 (-10 ^ 307)replace0

矩形数组部分{;}可以用包含值的范围或命名范围来replace。