我有一个由工作表自动填充的Google工作表(工作表1)。现在,我只想将新添加的行复制到工作表2中,如果工作表2中不存在该行。我试图匹配两个工作表中的列1,并且如果工作表2中不存在该行,则应将行添加到工作表2中我在Google脚本方面没有太多经验。这是我的代码。
var s1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Original');
var s2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Filtered');
var values1 = s1.getDataRange().getValues();
var values2 = s2.getDataRange().getValues();
var resultArray = [];
for(var n=0; n < values1.length ; n++)
{
var keep = false;
var counter = 0;
for(var p=0; p < values2.length ; p++)
{
if( values1[n][1] == values2[p][1])
{
keep = true;
break ;
}
}
if(keep == false)
{
resultArray.push(values1[n]);
s2.appendRow();
resultArray = [];
keep = false
}
}
}
您需要将参数传递给appendRow函数。您目前未添加任何内容。参见此处的示例。
var aRow = ["col1", "col2", "col3"];
SpreadsheetApp.getActiveSheet().appendRow( aRow );
最后,您应该有一个数组,其中要填充要为特定行复制的值。如果该行在sheet2中不存在,则将其添加到那里。