【发布时间】:2021-08-08 16:31:04
【问题描述】:
好的,我的页面上有一个日历,每天都是该日期的格式化版本,例如。
Jan 2021
1 2 3 4
5 6 7 8
etc..
因此 1 单元格将包含 2021 年 1 月 1 日(但格式化为仅显示“1”[d]) 我在该页面上还有一个单元格 (K5) 供用户输入日期,例如:[1/1/2021]
我想要一个脚本,如果它与用户输入单元格匹配,它会更改日历中当天的边框颜色。
代码:
function onEdit(e) {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getActiveSheet();
var date = sheet.getRange("K5").getValue();
if (e.range.getValue()== date) {
e.range.setBorder(true, true, true, true, true, true, "red", SpreadsheetApp.BorderStyle.solid); }
};
这行不通,我想不出一种方法让代码对日历的每个单元格都有效(有 2 年的价值,所以超过 1000 个单元格)。 它不需要 onEdit,我只是在测试实际的 setBorder 函数是否有效(它确实有效) 另外,我不能使用条件格式,因为我已经用它来更改 bg 和其他字体颜色(并且无论如何都没有更改边框颜色的选项)
如果你想看看你能做什么,我已经制作了一个只有 Jan 的迷你版本: https://docs.google.com/spreadsheets/d/1oV4lE8cQB-e2bVc_HgiGM31ivk3uHxPcqsSdLdCxsmQ/edit?usp=sharing
【问题讨论】:
-
您能否再添加至少一个月(可能是两个月),以便我了解日历在工作表上的位置是否有规律?确保它与实物相符。
-
哈哈,希望你已经准备好了,完成了!
标签: date if-statement google-apps-script google-sheets