【发布时间】:2018-12-11 07:40:16
【问题描述】:
这段代码有点麻烦。这意味着自动输入 2 个特定列中的单元格在单元格右侧更新的时间。它正在使用脚本来处理编辑时触发的一个单元格,但当我将它们放入一个函数时却没有,这样我就可以一次运行多个单元格。
function onEdit(e){
myFunction1();
myFunction2();
}
function myFunction1()
{
var sheet = e.source.getActiveSheet();
if (sheet.getName() == "Dispatch Log")
{
var actRng = sheet.getActiveRange();
var editColumn = actRng.getColumn();
var rowIndex = actRng.getRowIndex();
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues();
var dateCol = headers[0].indexOf("Time Dispatched") + 1;
var orderCol = headers[0].indexOf("Dispatched to Location") + 1;
if (dateCol > 0 && rowIndex > 1 && editColumn == orderCol)
{
sheet.getRange(rowIndex, dateCol).setValue(Utilities.formatDate(new Date(), "GMT-8", "MM-dd-yyyy hh:mm"));
}
}
}
function myFunction2()
{
var sheet = e.source.getActiveSheet();
if (sheet.getName() == "Dispatch Log")
{
var actRng = sheet.getActiveRange();
var editColumn = actRng.getColumn();
var rowIndex = actRng.getRowIndex();
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues();
var dateCol = headers[0].indexOf("Time 1") + 1;
var orderCol = headers[0].indexOf("Status 1") + 1;
if (dateCol > 0 && rowIndex > 1 && editColumn == orderCol)
{
sheet.getRange(rowIndex, dateCol).setValue(Utilities.formatDate(new Date(), "GMT-8", "MM-dd-yyyy hh:mm"));
}
}
}
任何帮助将不胜感激,我对 java 脚本相当陌生
【问题讨论】:
-
Hint:下一次,当您在 SE 上发布问题时,请同时粘贴您收到的错误消息(对于 javascript,通常在浏览器控制台中)。与仅分析代码示例相比,这将有助于更快地找到根本原因。 -
您需要显式传递函数参数。在您首选的开发人员文档资源中查看 JavaScript 中的变量范围。
-
我没有收到可以看到的错误消息,只是没有发生任何事情。
标签: javascript google-apps-script google-sheets