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 时,邮政编码列在最左侧。
我想 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 时,邮政编码列在最左侧。