Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在编辑触发器时-当";x";是在何时输入的;x";在单元格中被删除_Javascript_Google Sheets - Fatal编程技术网

Javascript 在编辑触发器时-当";x";是在何时输入的;x";在单元格中被删除

Javascript 在编辑触发器时-当";x";是在何时输入的;x";在单元格中被删除,javascript,google-sheets,Javascript,Google Sheets,我在一张工作表上创建了一段代码,如果无法参加培训,人们会在其中标记“x”。它是在谷歌表单中制作的,当它们点击“x”时,它会产生一个时间戳 我需要的是一个onedit触发器,当在单元格中键入“x”和删除“x”时激活该触发器。 function onEdit(e) { var sheet = e.source.getActiveSheet(); if (sheet.getName() == "Mandagstræning","Tirsdagstræning","Torsdagstræning","H

我在一张工作表上创建了一段代码,如果无法参加培训,人们会在其中标记“x”。它是在谷歌表单中制作的,当它们点击“x”时,它会产生一个时间戳

我需要的是一个onedit触发器,当在单元格中键入“x”和删除“x”时激活该触发器。

function onEdit(e) {
var sheet = e.source.getActiveSheet();
if (sheet.getName() ==
"Mandagstræning","Tirsdagstræning","Torsdagstræning","Holdkamp") {
var actRng = sheet.getActiveRange();
var editColumn = actRng.getColumn();
var rowIndex = actRng.getRowIndex();
var headers = sheet.getRange(1, editColumn, 1,
sheet.getLastColumn()).getValues();
var dateCol = headers[0].indexOf("Tid") + editColumn;
if (sheet.getRange(rowIndex, orderCol).getValue() === "x") {
sheet.getRange(rowIndex, dateCol).setValue(Utilities.formatDate(new
Date(), "UTC+8", "dd-MM-yyyy HH.mm.ss"));
}
希望有人能帮忙

试试这个脚本

function onEdit(e) {
var sheet, watchCol, dateCol, sheetInd;
sheet = e.source.getActiveSheet();
watchCol = 2;
dateCol = 6;
sheetInd = ["Mandagstræning", "Tirsdagstræning", "Torsdagstræning", "Holdkamp"].indexOf(sheet.getName());
if (sheetInd > -1 && e.range.columnStart === watchCol && e.range.rowStart > 1) {
    sheet.getRange(e.range.rowStart, dateCol).setValue(e.value == 'x' ? Utilities.formatDate(new Date(), "UTC+8", "dd-MM-yyyy HH.mm.ss") : null);
}
}

更改var watchCol和dateCol以符合您的要求。当在第2列(watchCol)中输入“x”时,此示例脚本将在第6列(dateCol)中放置时间戳,但仅在上述表单中。我希望这能有所帮助?

对不起。是的,它在谷歌工作表中。我还需要它在从第2列删除“x”时做一个时间戳。你可以在我的工作表中看到一个例子。您希望时间戳显示在哪里?我在标题行中看不到值“Tid”?