写点什么

Excel 包含文本的单元格,'=A1>0' 返回 TRUE,但 '=COUNTIF(A1, ">0")' 返回 0

作者:柠檬与橘子
  • 2025-06-19
    河北
  • 本文字数:499 字

    阅读完需:约 2 分钟

将包含文本和数字的单元格进行比较时,Microsoft Excel 2021 中的行为不一致。

直接比较(例如=A1 > 0或)时,如果 A1 包含“NULL”或“Test”之类的文本,=IF(A1 > 0, TRUE, FALSE)Excel 会返回。但是,使用 时,Excel 会返回 0,就好像表达式的计算结果为 一样。TRUE=COUNTIF(A1, ">0")FALSE

例子:


为什么 Excel 除使用 外,会将文本值视为大于 0 COUNTIF?不应该COUNTIF计算任何结果为 TRUE 的表达式吗?

Office LTSC 2024 中文

比较运算符在两个实例中的工作方式不同。

A1>0:如果 A1 中的值不是数字,Excel 首先会尝试将该值强制转换为数字。执行此操作时,Excel 会将字符串视为大于零。

COUNTIF(A1,">0"):此处 Excel 不会尝试将 A1 中的值强制转换range为数字。如果 A1 中的值不是数字,则会完全忽略该值。

如果 A1 包含1文本字符串,COUNTIF同样会忽略它。

要让公式将计入1文本字符串,必须确保条件正在寻找大于的文本字符串0=COUNTIF(A1,">""0""")

当然,后者会忽略 A1 中的数值。另外,还需要注意,比较是按字典顺序进行的。例如,它会认为"2"大于"101"

因此,如果想使用COUNTIF并使其行为类似于直接比较A1>0,则需要组合公式:=COUNTIF(A1,">""0""") + COUNTIF(A1,">0")

用户头像

还未添加个人签名 2023-03-27 加入

还未添加个人简介

评论

发布
暂无评论
Excel包含文本的单元格,'=A1>0' 返回 TRUE,但 '=COUNTIF(A1, ">0")' 返回 0_柠檬与橘子_InfoQ写作社区