多个IF为430参数

时间:2014-06-24 18:09:22

标签: excel

我有一个430行的列表,用于设置

中的电话号码范围
**Cabin   From          To** 
Cabin2  22007000    22009999
Cabin3  22010000    22059999
Cabin4  22060000    22075999
Cabin5  22310000    22369999
Cabin6  22370000    22377999
Cabin7  22380000    22399999

我有1500个电话号码需要设置它所属的机舱 我需要一个公式来检查范围和打印舱名称的编号 像这样

**Phone        Cabin** 
22363998       Cabin5
22365005    
22381790    
22381929    
22478221    
22478222    

先谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用INDEX(cabinArray, MATCH(phoneNumber, numberFromArray, 1))

这将匹配您查找的less than的最高值phoneNumber

将小屋列设置为命名范围cabinArray,将From列设置为numberFromArray

请注意,这假定范围涵盖所有可能的数字,并且您不会查找范围之外的数字。

旁注:

您可以使用更复杂的方式使用某种形式的验证: if(INDEX(cabinArray, MATCH(phoneNumber, numberFromArray, 1)) = INDEX(cabinArray, MATCH(phoneNumber, numberToArray, -1)), INDEX(cabinArray, MATCH(phoneNumber, numberFromArray, 1)), "Failed to match")

这会检查您正在查找的phoneNumber是否低于To且大于From。它不优雅,但确实有效: )