【问题标题】:Excel country codeExcel国家代码
【发布时间】:2015-03-07 20:47:30
【问题描述】:

我有一个工作表 (worksheet1),A 列中有国家代码,B 列有国家名称。在另一个工作表 (worksheet2) 中是一个带有国家名称和其他附加信息的长列表(在同一个单元格中)。如果单元格包含指定的国家/地区名称,如何从 worksheet1 的列表中显示 worksheet2 的 B 列中的国家代码。 我不知道我应该使用哪个函数。

【问题讨论】:

    标签: function excel country-codes vba


    【解决方案1】:

    如果我正确理解了这个问题,您的第一张表中有一个国家和代码列表,如下所示:-

    并且您想在第二张表中查找具有附加信息的国家/地区列表,如下所示:-

    您可以尝试使用如图所示的公式。它依次对 sheet1!b2:b5 中的每个国家进行“查找”,以查看是否与 sheet2!a2 匹配。然后 MATCH 语句从结果数组中挑选出任何做的事情,INDEX 语句在 sheet1!a2:a5 中找到相应的国家代码。

    =IFERROR(INDEX(Sheet1!A$2:A$5,MATCH(TRUE,ISNUMBER(FIND(Sheet1!B$2:B$5,A2)),0)),"")
    

    必须使用 Ctrl-Shift-Enter 作为数组公式输入并根据需要下拉。

    【讨论】:

      【解决方案2】:

      如果您准备在工作表 1 中切换列的顺序,那么 VLOOKUP 应该会提供服务。

      在不改变顺序的情况下,稍微不太容易的INDEX/MATCH 组合应该可以使用。

      SO 上有成百上千的例子。

      MATCH 在您的country name 列中查找您选择的country name 相对于您的范围顶部的位置,INDEX 采用该相对位置并返回您的country code 列中的任何内容.

      如果您的country name 位于同一单元格中的其他文本中(即较长字符串的子字符串),则别无选择,只能先找到一些方法来提取它 - 无法将长字符串与更短的(虽然更短到更长是可能的)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-16
        • 2017-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多