根据区号确定状态(Microsoft Excel)
史蒂夫在A列中有电话号码,例如3035551212,并且希望能够查看前三位数字(区号),并在B列中返回与该区号关联的状态。他想知道实现此目标的最佳方法。
Excel具有许多使您在尝试操作数据时更轻松的功能。在这种情况下,使用VLOOKUP函数将区号与相应状态进行匹配很简单。
在应用函数检索所需的信息之前,需要创建一个简单的数据表,其中包含要检索的数据。在此表中,您需要在工作表中并排的区域代码和状态并排放置在各自的列中,并按区域代码排序。例如,您可以将区号放在F列中,并将这些区号的状态放在G列中。可以在许多网站上找到区号和状态,也可以根据需要创建自己的表。
将数据放入两列后,选择这些列并为所选范围创建一个名称。 (_ExcelTips的其他问题已经讨论了如何创建命名范围。)例如,您可以使用诸如StateCodes之类的名称来命名该范围。这种命名虽然不是绝对必要的,但使使用查找公式更加容易。
假设电话号码在单元格A1中,并且您希望返回电话号码旁边栏中的州名,则在单元格B1中,您将输入:
=VLOOKUP(VALUE(LEFT(A1,3)),StateCodes,2,FALSE)
VALUE和LEFT函数用于仅从电话号码中提取前三个字符。然后在VLOOKUP公式中使用它在StateCodes表中查找区号。 Excel返回与区号对应的州名称。
您可以提取区号(对查找至关重要)的另一种方法是使用FLOOR函数,如下所示:
=VLOOKUP(FLOOR(A1/10000000,1),StateCodes,2,FALSE)
请注意,此方法要求将电话号码存储为数字,因此可以将其除以10,000,000。
如果您的电话号码始终采用指定的格式(3035551212),则此处讨论的方法非常有用。如果您的电话号码格式不同(也许使用括号和破折号),则该公式将不起作用,需要进行调整以查看区号在电话号码中的实际位置。如果您的电话号码不是单一格式,那么所有选择都将关闭,并且查找任务变得非常困难。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(8063)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: