您可以试一试 - 它使用字符串格式将当前日期设置为正确的格式(您可以根据需要进行调整)。需要注意的一件重要事情:无论您在此处做什么,该值都将根据您在电子表格本身中指定的任何格式显示。因此,如果您什么都不做,结果将看起来像传统的日期时间表示。如果您希望它以您指定的格式出现,您可以做两件事:1.) 使用电子表格的格式菜单将整列转换为文本;或 2.) (我的选择)在你写的值前面加上 a '
,这实际上会将它变成一个字符串(这就是在下面的代码中所做的)。希望这可以帮助。
function onEdit() {
var s = SpreadsheetApp.getActiveSheet();
// This was "MySheet" for me - change to whichever sheet you want to test
if( s.getName() == "MySheet" ) {
var r = s.getActiveCell();
// Check if the column is either I or J
var currColumn = r.getColumn();
if( currColumn == 9 || currColumn == 10) {
// If so, set dateCell = the current row at column J
var dateCell = s.getRange(r.getRow(), 11);
// Format the current date into datetime format (adjust to display how you want)
var dateTime = Utilities.formatDate(new Date(), "GMT-8", "MMM-dd-yyyy h:mm a");
// Set the cell
dateCell.setValue("'" + dateTime);
}
}
};