我在B栏中有一张包含日期和时间的Google工作表(例如02/07/2016 15:06:00)。
我想基于'小时'来突出显示行。细胞的一部分 - 通常是在12:00和12:59之间的任何东西,以一种颜色突出显示,以及用另一种颜色突出显示的任何其他颜色。
我有以下代码按预期工作,但它基于字符串值而不是日期值:
function Formatting1() {
var sheet = SpreadsheetApp.getActiveSheet();
var columnO = sheet.getRange(2, 1, sheet.getLastRow()-1, 1);
var oValues = columnO.getValues();
for (var i = 0; i < oValues.length; i++) {
if (oValues[i][0] == 'No call received') {
sheet.getRange(i + 2, 1, 1, 6 ).setBackgroundColor('#FF3300');
}
}
}
我难以理解的日期/时间范围的处理!任何帮助都将非常感激!
答案 0 :(得分:1)
您可以使用条件格式设置和应用于=HOUR(D2) = 12
的公式规则B2:B
来执行此操作。
如果您想使用该功能,您只需将if语句更改为
即可if (oValues[i][0].getHours() === 12)
假设oValues
的第一列包含日期。
Google Apps脚本将电子表格日期读为Javascript dates。
但要注意时区,电子表格的时区可能与脚本操作的时区不同,因此条件格式选项可能会减少头痛的可能性。