gpt4 book ai didi

javascript - 让谷歌表格在多列中自动更新时间有点麻烦

转载 作者:行者123 更新时间:2023-11-30 06:20:06 26 4
gpt4 key购买 nike

这段代码有点问题。这意味着自动输入 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 脚本的新手

最佳答案

我认为您应该将事件 e 作为函数参数传递。

function onEdit(e){
myFunction1(e);
myFunction2(e);
}
function myFunction1(e)
{
...

希望对你有帮助:)

关于javascript - 让谷歌表格在多列中自动更新时间有点麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53719438/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com