【问题标题】:Excel: why the value of a blank cell is zero?Excel:为什么空白单元格的值为零?
【发布时间】:2017-08-28 17:04:45
【问题描述】:

假设有一个空的 Excel 表。在 B1 单元格中输入公式“=A1”。 B1 的值为 0。

我的问题是:为什么在引用空单元格 A1 时 B1 的值变为零? Excel 以这种方式运行的任何理由?

谢谢。

【问题讨论】:

  • 虽然没有直接回答问题,但值得一看:stackoverflow.com/questions/1119614/…stackoverflow.com/questions/32169958/…
  • 简而言之,Excel 假设您想要一个数字作为输出,因此从原始单元格中强制转换值(什么都没有,所以为 0),并给出 0 作为输出。
  • 您仍然可以使用“格式单元格”显示空白,如我的第一条评论中的第二个答案中所述。电子表格程序将默认值零分配给所有单元格并让用户稍后操作演示文稿似乎是合乎逻辑的。
  • @jrook 是的,我在提问之前阅读了您提到的两篇文章。由于我来自其他编程语言阵营,因此当 excel 执行此操作时会发生这种情况。对我来说,最合乎逻辑的解决方案是空白的值只是空白。好吧,只是我个人的选择。我无论如何都可以取 0 值。
  • FWIW,使用=A1&"" 强制使用零长度字符串。当 INDEX/MATCH 的 VLOOKUP 在遇到要返回的空白单元格后想要返回零时,这也可用于显示(明显空白的)单元格。两个警告:首先,零长度字符串不是真正的空白,其次,如果与 VLOOKUP(...)&"" 一起使用,那么任何应该作为真实数字返回的真实数字都会变成看起来像文本的文本-a-number。

标签: excel


【解决方案1】:

那是因为B1中的公式返回的是单元格A1的

Excel 将值 0 分配给空白单元格。

要区分 0 和空白,在 B1 中输入:

=IF(A1="","",A1)

【讨论】:

  • 让我们考虑 A1 是空的。 B2 是 =A1&"foo"。结果是“foo”而不是“0foo”。为什么?
【解决方案2】:

FWIW,强制使用 =A1&"" 的零长度字符串。当 INDEX/MATCH 的 VLOOKUP 在遇到要返回的空白单元格后想要返回零时,这也可用于显示(明显空白的)单元格。两个警告:首先,零长度字符串不是真正的空白,其次,如果与 VLOOKUP(...)&"" 一起使用,那么任何应该作为真实数字返回的真实数字都会变成看起来像文本-一个号码。 – 吉普车

引用最佳答案,以便我对其进行投票:)

我根据 Jeeped 将我的应用程序更改为 =formula&"",效果很好。索引返回值(公式)有点愚蠢。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多