vlookup 返回#N/A

vlookup returned #N/A

我想 vlookup 邮政区名使用 Postcode 为 table 下面:

    Year    Postcode  Value 
 0  2015    886       500 
 1  2015    2170      25 
 2  2015    3056      2.5 
 3  2015    3057      0

我试过了:

=VLOOKUP(C2, Sheet1!A2:F18276, 3, FALSE)

Table包含邮区名称:

ID      Postcode    Locality                        State   Long        Lat DC 
230     0200        ANU                             ACT     149.119     -35.2777     ... (more columns)
218     0200        Australian National University  ACT     149.1189    -35.2777     ...
232     0800        DARWIN                          NT      130.83668   -12.458684   ...
233     0801        DARWIN                          NT      130.83668   -12.458684   ...

并返回 #N/A

它在手写的小样本上有效,但在真实的 table 中无效。我也尝试将数据类型从 text 更改为 general 但没有任何改变。


更新:

我发现是数据类型引起的:虽然我把类型改成了text,但好像不是。我必须通过在邮政编码前面添加 ' 手动转换为 text。所以新的问题是:如何将整个列转换为 text?

在您显示的示例中,它显示邮政编码为 886(无前导零),而在较低的 table 中,它显示前导零。这很可能意味着您在一个地方有数字而在另一个地方有字符串,比较失败。

如果您可以编辑较低的 table,试试这个:

  • 在备用单元格中输入一个零
  • Select 并复制单元格 (CTRL-C)
  • Select 下方 table 中的“邮政编码”列并执行特殊粘贴 -> 添加。如果可能,这应该将字符串转换为数字。

如果您无法编辑较低的 table,请将 C2 从 886 更改为 '0886,看看是否可以。

使用以下方法创建新的邮政编码列:

=TEXT(postcode_col , "0000")

VLOOKUP 公式中将其用作 lookup_value

此外,请确保在查询 table 时,邮政编码列在最左侧。