【问题标题】:Google sheet, IF cell greater than 0 True (Seems simple enough, but its not calculating)谷歌表,如果单元格大于 0 真(看起来很简单,但它不计算)
【发布时间】:2019-12-24 09:09:06
【问题描述】:

MY SHEET 时间卡页面

在 O 列中,我有一个公式花了我一段时间,但它正在起作用。此公式的结果是返回周日第三班次的工作时间。

如果您查看单元格 O8 中的公式

=IF(COUNT(B8:C8)=2,IF(WEEKDAY(A8)=7,IF(U8=TRUE,(C8-"00:00:00")*24,"0.00"),"0.00"),"")

目前返回 2.00

所以在开始我的双倍时间专栏 (I) 时,我使用了一个简单的 if 条件,但由于某种原因,它并没有让我抓住那个数字。

=IF(O8>0, "Yes", "No")

我尝试过使用 1,我尝试过大于或等于,我尝试过 (--"0.00") 我尝试了多种方法,但是一旦我将其应用于该列中的所有单元格,它就无法正常工作.. .

这是我在 O8 上返回结果的方式吗?我只是在我的 IF 条件下做错了什么吗,我完全不知所措......

【问题讨论】:

  • 我可以澄清一下你想做什么吗?您想在 I 列中实现一个公式吗?如果 O 列中的值大于 0,则返回“真实”?否则为假?
  • 由于您在 O 列的公式中使用了引号,因此输出作为字符串返回。因此,您需要将它们转换为数字。所以在 I3 =IF(O3+0>=1,"Yes","No") 将返回 'No'。
  • zig,是的。 JPV,听起来像是对我的回答 =) 把它贴出来,谢谢!

标签: if-statement google-sheets string-formatting google-sheets-formula array-formulas


【解决方案1】:

您需要将 O 列中的值转换为整数。

为此,您可以使用Int() 函数:

=IF(Int(O8)>0,TRUE,FALSE)

【讨论】:

  • 谢谢zig,现在我有一堆更复杂的公式要弄清楚=)
【解决方案2】:

I3 中使用它:

=ARRAYFORMULA(
 IF(O3:O9*1>0, O3:O9, 
 IF(N3:N9*1>0, N3:N9, "0.00")))

【讨论】:

  • 我喜欢在数组中而不是在每个单元格中这样做的想法,尽管我不明白这样做的好处 VS. zig建议的方式。然而,我也使用这种方法通过在 H3 中使用 =ARRAYFORMULA(G3:G9-I3:I9) 来计算加班时间
  • 使用数组公式代替每行(每单元格)公式有几个优点。更少的公式 = 更少的计算时间 = 更好的电子表格整体性能。示例:假设您有 4 列 1000 行,并且在每个单元格中都有一个 IF 公式。总共有 4000 个公式,而您只需要 4 个数组公式。少了 3996 个公式
  • 再次感谢您,我喜欢学习这些东西 =) 我的床单在您的帮助下取得了长足的进步。我非常感谢您对这个项目的帮助。我觉得我已经走了很长一段路,而且我的很多公式都很草率,但是一旦我至少让一切正常,我会回去简化我所能做的,用我一路上学到的东西= )
猜你喜欢
  • 1970-01-01
  • 2015-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多