【发布时间】:2018-05-25 18:23:07
【问题描述】:
首先,这是我尝试开始工作的代码:
function moveChecked(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheetSrc = ss.getSheetByName("combo (latest)");
var sheetTgt = ss.getSheetByName("combo (corrected)")
var sheetSrcData = sheetSrc.getDataRange().getValues();
var i, j;
var valuesC = new Array();
var rowsC = new Array();
var rowsCk = 0;
// Find rows label as [c]reate
for(i=0; i<sheetSrcData.length; i++){
if(sheetSrcData[i][84] == "c"){
for(j=0; j<86; j++){ // 86th is the CH column
valuesC[j] = sheetSrcData[i][j]
}
sheetTgt.appendRow(valuesC);
rowsC[rowsCk] = i+1;
rowsCk++;
}
}
// Delete moved rows from `sheetSrc`
for(i=0; i<rowsCk.length; i++){
sheetSrc.deleteRow(rowsC[i]);
}
}
代码的最后一部分,我尝试删除移动/复制到另一张表 (sheetTgt) 的行,根本不删除任何行,即它确实删除了行。但是,rowsC 数组确实包含我需要删除的所有行。整个代码运行没有错误。
【问题讨论】:
-
错误是什么?执行记录是怎么说的?也可以尝试
rowsC.reverse()从下往上开始。 -
“它不起作用”不是充分的问题描述。 stackoverflow.com/help/how-to-ask
-
@I'-'我,没有错误,它运行没有错误,但没有删除我需要它删除的那些行。
-
@tehlowch,很抱歉,如果根据您或规则还不够,但在我看来,如果某些内容应该 删除 某些行并且它没有工作,这句话暗示问题在于不删除那些行。你不觉得吗?
-
@tukusejssirs 那部分是显而易见的。但不明显的是它是否有效,但以您不想要的方式 - 例如删除“错误”(对您而言)行,不删除任何行,抛出错误等。所有这些都符合“它不行。”要求有问题的人详细说明并具体说明预期和实际发生的情况是正常的。
标签: google-apps-script google-sheets