0

我在 Google 电子表格中设置了时间记录表。现在我正在尝试根据电子表格中其他单元格的值来实现单元格的条件格式:

如果单元格 G2 的值大于 06:30:00 (hh:mm:ss) AND 单元格 D2 的值小于 00:30:00 (hh:mm:ss) 或单元格 D2 为空白,则将背景颜色设置为单元格 D2 变为黄色。

如果单元格 G2 的值大于 08:45:00 (hh:mm:ss) AND 单元格 D2 的值小于 00:45:00 (hh:mm:ss) 或单元格 D2 为空白,则将背景颜色设置为单元格 D2 变为黄色。

如果不满足条件,则应将背景颜色重置为无。

我了解到使用公式是不可能的。在 Google Apps Script 中有没有办法做到这一点?我不是脚本编写者,但知道如何插入片段,如果有人愿意向我解释它,我可能能够阅读和理解。

在搜索类似用例时,我发现对 Google Apps 脚本的唯一引用是这个链接,这是对其功能的一般性讨论。

4

3 回答 3

2

这应该可以通过为这样的函数创建 onEdit 触发器来实现:

function myOnEdit(e) {
  var nextColumnCell = e.range.offset(0, 1);
  if (e.range.getValue() == 'foo') {
    nextColumnCell.setFontWeight('bold');
  } else {
    nextColumnCell.setFontWeight('normal');
  }
}

可以在此处找到有关触发器的更多信息。

于 2012-05-31T22:25:19.710 回答
0

不知何故,我也找不到直接比较 Google 电子表格中时间的方法。但我可以从格式转换timenumber格式。通过这样做,您将能够比较实体。

格式中的1number等于格式中的00:00:00time因为 1 代表 12:00am

格式中的0.5number等于格式中的12:00:00time因为 0.5 代表下午 12:00

格式中的0.25number等于格式中的6:00:00time因为 0.5 代表上午 6:00

它没有回答主要问题,但我希望它有所帮助。

于 2014-01-23T07:08:23.740 回答
0

(现在)可以使用公式。

选择 ColumnD 并从中清除任何现有的 CF 规则。格式、条件格式...、如果...则格式化单元格Custom formula is

=and(row()<>1,or(and(G1>6.5/24,D1<0.5/24),and(G1>8.75/24,D1<0.75/24)))

用黄色填充和Done.

于 2017-04-23T21:04:20.473 回答