我有一个包含多列的数据列表。
在一列中(假设为 C),有一个城市/地点列表。有多个条目,即同一个城市在一列的不同行中多次出现。
我另外还有一个列表,它告诉我哪些城市/地方与哪些国家相对应。
我想让 Excel 使用 C 列数据来填充一个空列,其中包含与该城市/地点相关的正确国家/地区。为了便于说明,我们假设 D 列是...
我怎样才能做到这一点?
答案1
我不喜欢VLOOKUP
一些原因。我建议使用INDEX
和的组合MATCH
作为解决方案。正如评论中警告的那样,简单的解决方案依赖于城市名称只出现在您的列表中一次。
假设 C 列有一个城市名称,而您希望 D 列显示国家/地区(或州或官方座右铭或最受欢迎的头发颜色或其他)。我们还假设您在另一个名为 CityLookup 的工作表中有一张表,其中 A 列和 B 列分别是城市和国家/地区名称。在这种情况下,您可以使用以下公式来提取数据:
=INDEX(CityLookup!$B:$B,MATCH($C1,CityLookup!$A:$A,0))
它的工作原理如下:
1)INDEX
输入一个数据数组并输出该数组中的第 N 个值
2)MATCH
在数据数组中查找某个值并输出找到该值的位置(第 3 个参数表示0
查找完全匹配的值)
3) 将它们放在一起,您就会得到一个小故事:(请允许我这样说)
Index 说:“您好。您希望我使用哪个数组?……啊,CityLookup 选项卡中的 B 列?太棒了。里面有一个很大的国家列表。而且,啊,您想要哪条记录?”
Match 跳了起来说:“别担心,Index,我会帮你查一下的。那么我要在 C1 中找到值吗?好吧,那是一个城市名称。我应该在哪里查找?当然,对吧!我应该在 CityLookup 选项卡的 A 列中查找。那是一长串城市列表。而且是完全匹配,对吧?好的,我找到了第一个完全匹配。可能还有更多,但我要在这里停下来。Index,你应该拉出记录 N。”
Index 回答说:“你说的是记录 N?太棒了。好吧,User,这是你给我的那串国家/地区中的记录 N。我希望它对你有用。”
我知道这很愚蠢,但我希望这有意义。你可以通过使用表格来获得比实际更花哨的效果——我非常喜欢表格——但我试图给出一个简单的例子。如果你有多个城市实例,那么正如 Jon Story 已经提到的那样,它会更加复杂。在这种情况下,你必须找到一些独特的方法来识别你想要的城市。例如,你可以要求他们输入城市和州/乡镇/县/省/州/无论你所在的地区如何称呼它们,然后使用这两个参数进行匹配。