google-sheets - 根据 Google 电子表格上的日期切换行背景

标签 google-sheets gs-conditional-formatting

我有一个存储日期的列,并且我尝试实现一个条件格式自定义公式,该公式可以在日期是奇数或偶数时切换整行(或行的多个单元格)的背景颜色。

这是我的工作表的逗号分隔值版本以及我试图实现的目标。日期和时间位于单独的列中。我可以有多行具有相同的日期(不同的时间)。具有相同日期的行必须具有相同的颜色。

Date,       Time, Data
01/12/2014, 01:00, "xxxx" -> BG = X
01/12/2014, 03:00, "xxxx" -> BG = X
02/12/2014, 01:00, "xxxx" -> BG = Y
03/12/2014, 01:00, "xxxx" -> BG = X
03/12/2014, 02:00, "xxxx" -> BG = X
04/12/2014, 03:00, "xxxx" -> BG = Y

为了计算这一天是偶数还是奇数,我编写了一个简单的函数,它返回自 1970 年 1 月 1 日以来的天数:

/**
 * Return the day of the year of a date or a range
 *
 * @param {date}|{Array.Array} Date or range.
 * @return The day of year.
 * @customfunction
 */
function DAYSFROM70(date) 
{
  if (date.map) {
    return date.map(DAYSFROM70);
  } else {
    if (!date instanceof Date || !date.getTime) {
      return "";
    } else {
      return Math.ceil(date.getTime() / 86400000);
    }
  }
}

这是我尝试应用的自定义公式(请注意,DAYSFROm70 函数使用范围作为参数),但没有成功:

=ISODD(DAYSFROM70($B$2:$B$101))

以下公式对单元格背景进行着色(但我显然不能使用它,周日和周一都很奇怪):

=ISODD(WEEKDAY($B$2:$B$101))

我的脚本出了问题,但我不知道是什么问题......

查看此电子表格进行测试: https://docs.google.com/spreadsheets/d/1U49FoeMPKlvjCURsqS7GxTH62u_fTJNCcH12XFQtWVQ

感谢您的帮助。


最佳答案

为什么你不能这样做:=isodd(day(A1)) ??

  • 选择整张纸
  • 点击格式 -> 条件格式
  • 从下拉列表中选择“自定义公式”
  • 在公式框中输入:=isodd(day($A1))
  • 选择格式(背景颜色)
  • 点击“确定”。

编辑

在您的问题中,您没有具体说明“日子是奇数”的含义。

因为您想要“每隔一天”为行着色,而不管年、月或年中的哪一天,您都可以这样做(使用内置函数): =isodd(DATEVALUE($A1))

[请阅读上面有关应用条件公式的说明。您不需要使用范围或数组]

不要在条件格式公式中引用范围!! "=ISEVEN(WEEKDAY($B$2:$B$23))"<- 不!!

"=isodd(DATEVALUE($A2))"<- 是的!! (其中 A2 是您正在格式化的范围的最上面一行 - 如条件格式化弹出对话框中的“范围”框中所写)

关于google-sheets - 根据 Google 电子表格上的日期切换行背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25742040/

相关文章:

google-sheets - Google 表格,按百分比类别进行条件格式设置

if-statement - 尝试在条件格式公式中使用 IF VLOOKUP 并获得无效公式

google-sheets - 使用引用单元格本身的自定义公式的条件格式

regex - 从 Google 表格上的文本中提取特定数字?

java - 如何检测 Google 电子表格中的更改? java

arrays - 标记包含 FILTER 列表中的单词的单元格

javascript - 如何使用 Apps 脚本打印对 Google Analytics API 的多次调用到 Google Sheets

javascript - 使用 JavaScript 函数和复选框的 Google 表格

google-sheets - 多个范围内的 VLOOKUP Google 表格