google-apps-script - 为什么我的代码没有为同一行索引输入新值?
问题描述
我有一个带有时间戳和用户号码的谷歌表格,用户可以在不同的日子多次输入他们的号码。我正在尝试将其打印到一张新工作表上,该工作表打印姓名、ID 并在他们登录的那一天的列中输入 1。
对于具有多个帐户的条目有一个计数器变量,因此如果是这种情况,我会再次遍历登录列表并找到数字相同但日期不同的位置。然而,当我尝试在第二个 if 语句中设置 daySheet 的值时,它使用第一天而不是列表中的第二天。我使用的数据示例:
12/14/19 test1 12/20/19 test1
它在谷歌表中写的内容:第 11 行:第 14 列:第 20 列:test1 1 1 我很困惑,想知道我是否应该使用更简单的方法,或者我是否以错误的方式思考这个问题?
for(var i = 0; i < sheetLength; i++){
signInLN = sheet.getRange(i+1,3).getValue();
if(counter > 1){//2nd if
for(var k = 1; k <= sheetLength; k++){//2nd for loop
//outer for loop is i
//inner for loop is k
var date2 = signInSheet.getRange(k+1,1).getValue().toString();//time stamp in sign in sheet
var month2 = date2.slice(4,7);
var day2 = Number(date2.slice(8,10));
Logger.log(day+": Days "+i+" :I");
var year = Number(date2.slice(11,15));
if(signInLN == signInSheet.getRange(k+1,3).getValue() && day != day2){//if lunch number is the same and the days are different
//lunch numbers are the same, dates are different so add to the k value
daySheet.getRange(k+10,day+3).setValue(1);
}
}//2nd for loop
//2nd if
}else if(currentCell.isBlank()){
daySheet.getRange(i+10, 2).setValue(fullName);//set name to first cell
//set PI to second cell
daySheet.getRange(i+10,3).setValue(pI);
daySheet.getRange(i+10,day+3).setValue(1);
}
}
解决方案
推荐阅读
- html - 变形 SVG 与
SVG 或 CSS 过渡 - javascript - 模态没有出现在 laravel
- javascript - 将对象值连接成一个值
- azure - 在 Azure Synapse 中重命名文件列名
- html - 将较长的桌子包裹在相邻的较短的桌子下
- css - 当条件为假时,网格模板区域会增长
- javascript - 如何在 finally 中执行另一个承诺?
- javascript - 如何在没有事件的情况下执行功能?
- regex - 如何在Wget的--accept-regex中使用和'OR'正则表达式
- python - 关于使用 fig.add_trace(go.Indicator(); 的间距的问题;如何添加足够的间距以使每个无花果的标题不重叠?