Google Sheets脚本需求:带毫秒时间及无年份日期格式
修改Google Sheets时间戳脚本以满足自定义格式需求
以下是调整后的脚本,可实现带毫秒的时间戳、日期不显示年份、单个数字时间补前导零的需求:
function onEdit(e) { const range = e.range; const sheet = range.getSheet(); // 仅针对目标工作表的D列(第4列)触发 if (sheet.getName() !== "Sheet1" || range.columnStart !== 4) return; // 替换"Sheet1"为你的工作表名称 const selectedValue = range.getValue(); const timestampCell = sheet.getRange(range.rowStart, 5); // 对应E列(第5列) if (selectedValue) { // 自定义格式:MM/dd(无年份,补前导零) HH:mm:ss.SSS(带毫秒,时间补前导零) const formattedTimestamp = Utilities.formatDate( new Date(), Session.getScriptTimeZone(), "MM/dd HH:mm:ss.SSS" ); timestampCell.setValue(formattedTimestamp); } else { // 若D列内容清空,同步清空E列时间戳 timestampCell.clearContent(); } }
关键格式说明
格式字符串"MM/dd HH:mm:ss.SSS"的各部分作用:
MM:两位数字表示月份(如03代表3月)dd:两位数字表示日期(如09代表9号)HH:24小时制的两位小时(如08代表8点,避免单个数字)mm:两位数字表示分钟ss:两位数字表示秒SSS:三位数字表示毫秒
使用注意
- 替换代码中的
"Sheet1"为你实际使用的工作表名称 - 若需要指定时区(而非脚本默认时区),可将
Session.getScriptTimeZone()替换为具体时区字符串,例如"Asia/Shanghai"
内容的提问来源于stack exchange,提问作者dek
相关产品推荐
相关产品推荐

