表格脚本开发需求:满足条件时为单元格添加时间戳(Timestamp)
Google Sheets 自动时间戳实现方案
操作步骤:
- 打开你的共享表格,点击顶部菜单栏的「扩展程序」→「Apps 脚本」,打开脚本编辑器。
- 删除编辑器里默认的
myFunction()代码,粘贴下面的完整代码:
function onEdit(e) { // 获取编辑的单元格信息 const editedCell = e.range; const editedColumn = editedCell.getColumn(); const editedRow = editedCell.getRow(); const editedValue = e.value; // 只处理D列(第4列)的编辑,且排除表头行(假设第1行是表头) if (editedColumn === 4 && editedRow > 1) { // 获取对应行的H列单元格(第8列) const timestampCell = editedCell.getSheet().getRange(editedRow, 8); if (editedValue === "Completed") { // 填充当前时间戳 timestampCell.setValue(new Date()); } else { // 清空时间戳 timestampCell.clearContent(); } } }
- 点击脚本编辑器顶部的「保存」按钮,给这个脚本起个名字(比如"TimestampTrigger")。
- 第一次运行时会弹出权限请求,按照提示完成授权(这是Google官方的权限,用于修改表格内容)。
功能说明:
- 当任何用户在D列(项目状态列)输入「Completed」时,同一行的H列会自动填充当前系统时间。
- 如果把D列的「Completed」改成其他内容,H列的时间戳会自动清空。
- 这个脚本会对所有编辑表格的用户生效,不需要每个人单独设置。
内容的提问来源于stack exchange,提问作者Kevin L
相关产品推荐
相关产品推荐

