Excel 2010 VLOOKUP #N/A 当数字采用不同的数字格式时的结果

Excel 2010 VLOOKUP #N/A 当数字采用不同的数字格式时的结果

使用 VLOOKUP 函数,查找值可能类似于 100034,当我单击单元格时,它会告诉我它是“常规”格式。查找值位于我搜索的数据范围内,其格式为“数字”。我尝试将它们更改为相同(均为常规、均为数字、均为会计等),但不起作用。

由于某些奇怪的原因,参考数据的两个单元格以“数字”格式显示,并且它们可以正常工作,因此我认为这就是问题所在,但是即使将它们更改为其他格式后,它仍然有效。还有其他建议吗?下面是我的 VLOOKUP 语法示例。

VLOOKUP(C19,'Sheet2'!A:B,2,FALSE)

答案1

我能够复制此行为的唯一方法是强制将查找值视为文本(在单元格中输入时在其前面加上 ')。如果数据是从其他地方粘贴过来的或类似的东西,那么这可能相当容易实现。

如果这就是您的查找值发生的情况,以下公式应该可以解决问题:

VLOOKUP(VALUE(C19),Sheet2!A:B,2,FALSE)

这利用了价值函数,指示 Excel 尝试将存储为字符串的数字解析为实际数字。该函数的文档可在此处找到:https://support.office.com/en-us/article/VALUE-function-257d0108-07dc-437d-ae1c-bc2d3953d8c2

但是,如果你输入一些无法解析为数字的内容,它就会出错。你可以使用以下方法处理这个问题错误信息

VLOOKUP(IFERROR(VALUE(C19),C19),Sheet2!A:B,2,FALSE)

这只是告诉 Excel 如果无法将其转换为数字,则将其原封不动地传递。这样,如果您的数据中有非数字值,它仍然可以工作。这可能不是最优雅的解决方案,但它确实有效。

希望有帮助!

答案2

简短回答:检查你的数据保持一致性。格式不要紧。

长答案:

单元格的格式并不重要。重要的是底层值。

单元格可以包含看起来像数字的文本。您可以将此单元格格式化为“数字”,但底层值仍然是文本。

使用格式是确定单元格是否包含文本的好方法。如果您可以将数字格式更改为另一种数字格式,例如使用包含小数的格式并增加或减少单元格中显示的小数位数,则单元格值就是数字。如果它没有变化,则它不是数字。

一旦确定了哪些单元格包含文本而不是数字,您就可以使用此方法快速将它们强制为数字:

  • 在单元格中输入 0 并复制该单元格
  • 选择包含文本的单元格
  • 使用选择性粘贴并在对话框中勾选“添加”,然后确定

这个数学运算会将以文本形式存储的数字转换为实数。

相关内容