如果值是日期,则清除相邻单元格的单元格值
Clear cell value of adjacent cell if value is a date
我在谷歌应用程序脚本中编写这个脚本已经有一段时间了,我想我已经差不多明白了。不过,我真的需要另一双眼睛,因为它还没有完成。
我想做的事:
我正在写一张关于暂定日期和实际日期的表格。这两个日期在相邻的列中。一旦"实际"日期被填入单元格,我希望"暂定"日期被删除。
到目前为止,这是我的脚本:
function onEdit() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var range = sheet.getRange('F4:F');
var range2 = sheet.getRange('E4:E');
var rule = range.getDataValidation();
if (rule != null) {
var criteria = rule.getCriteriaType();
var args = rule.getCriteriaValues();
var clear = range2.clear({validationsOnly: false});
}
}
我需要做些什么才能运行这个脚本?
如果F列已填充,则似乎要删除E列中的值。如果是这样的话,我认为没有必要处理数据验证规则。以下脚本检查编辑的单元格是否位于F列,行>=4,并且单元格中的新值是否为日期。如果这些条件成立,则清除左侧的单元格(使用offset
)。
function onEdit(e) {
if (e.range.getColumn() == 6 && e.range.getRow() >= 4) {
if (e.range.getValue() instanceof Date) {
e.range.offset(0, -1).clear();
}
}
}
注意:此脚本使用传递给onEdit函数的事件对象。有趣的是,它的"value"属性在这里并不有用,因为即使用户输入日期,它也不是日期对象。这就是我所使用的e.range.getValue()
。
相关文章:
- 使用jquery在单击时在单元格中输入值
- CSS-若窗口太小,滚动条会出现在“表格”单元格上
- 可以'我不明白为什么;t将行和单元格添加到表中
- 如何在Angular中的表的所有单元格中添加链接
- 表中单元格的总和
- ExtJS网格单元格编辑器,防止焦点松动问题
- 有没有一种方法可以仅使用HTML/CSS来隐藏基于特定值的数据单元格
- 区分电子表格中的空单元格和0值
- ui网格将单元格显示为选择标记
- 单元格的工具提示或标题不显示超过2000个字符
- ui网格日期单元格过滤器,过滤日期格式导致显示错误的日期
- 在 SlickGrid 中编辑后,根据不同列中的另一个单元格清除单元格
- 如果值是日期,则清除相邻单元格的单元格值
- 谷歌应用程序将电子邮件表单脚本转换为PDF格式,但希望清除一些单元格
- 通过单击按钮清除选定的表格单元格
- 谷歌表格循环搜索字符串并清除相邻单元格
- 清除activateextjs4上的可编辑网格单元格
- 如何使用Jquery清除表格单元格中的数据
- 如何编写一个脚本,清除所需工作表(其名称在另一个工作表的单元格中指定)的(所有)内容
- 当输入另一个单元格时清除单元格内容