Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.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 为什么我的谷歌脚本每次执行后都会添加3行?_Javascript_Google Apps Script_Google Sheets - Fatal编程技术网

Javascript 为什么我的谷歌脚本每次执行后都会添加3行?

Javascript 为什么我的谷歌脚本每次执行后都会添加3行?,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我把下面的代码放在一起,检查B列A列是否。 如果为TRUE,则将列A数据粘贴到列B中 除了每次执行后添加3行之外,此操作正常! 我就是不知道为什么 有人能解释一下为什么会发生这种情况吗? 我试着分解这个脚本来理解每个部分的机制,但无法得出结论 函数刷新表(){ var ss=电子表格应用程序openById(“1YWjysA9uuGez3grhvMR3_JaAuBp5AsigOmDbxlk7d6c”); var sh=ss.getSheetByName(“前页”); var rA=sh.get

我把下面的代码放在一起,检查B列A列是否。 如果为TRUE,则将列A数据粘贴到列B

除了每次执行后添加3行之外,此操作正常! 我就是不知道为什么

有人能解释一下为什么会发生这种情况吗? 我试着分解这个脚本来理解每个部分的机制,但无法得出结论

函数刷新表(){
var ss=电子表格应用程序openById(“1YWjysA9uuGez3grhvMR3_JaAuBp5AsigOmDbxlk7d6c”);
var sh=ss.getSheetByName(“前页”);
var rA=sh.getRange(6,1,sh.getLastRow()-0,1);
var vA=rA.getValues();
var rD=sh.getRange(6,4,sh.getLastRow()-0,1);
var vD=rD.getValues();
var rB=sh.getRange(6,2,sh.getLastRow()-0,1);
var vB=rB.getValues();
对于(变量i=0;i
试着这样做:

范围中的第三个参数是行数,而不是最后一行数。如果使用最后一行号,但不以第1行开始,则从数据的底部开始迭代

vA和vB是二维数组,因此它们需要两个索引来指定单个单元格

function RefreshSheets() {
  var ss = SpreadsheetApp.openById("1YWjysA9uuGez3grhvMR3_JaAuBp5AsigOmDbxlk7d6c");
  var sh = ss.getSheetByName("Front Sheet");
  var rA = sh.getRange(6,1,sh.getLastRow()-5,1);
  var vA = rA.getValues();
  var rD = sh.getRange(6,4,sh.getLastRow()-5,1);
  var vD = rD.getValues();
  var rB = sh.getRange(6,2,sh.getLastRow()-5,1);
  var vB = rB.getValues();
  for (var i=0;i<vB.length;i++) {
    if (vB[i][0] != vA[i][0]) {
      vB[i][0] = vA[i][0];
    }
  }
  rB.setValues(vA)

}
函数刷新表(){
var ss=电子表格应用程序openById(“1YWjysA9uuGez3grhvMR3_JaAuBp5AsigOmDbxlk7d6c”);
var sh=ss.getSheetByName(“前页”);
var rA=sh.getRange(6,1,sh.getLastRow()-5,1);
var vA=rA.getValues();
var rD=sh.getRange(6,4,sh.getLastRow()-5,1);
var vD=rD.getValues();
var rB=sh.getRange(6,2,sh.getLastRow()-5,1);
var vB=rB.getValues();

对于(var i=0;iHi Cooper,非常感谢您的帮助!这解决了问题。感谢您的解释