Javascript google应用程序脚本数组从顶部删除重复值
我有一个工作代码,它通过比较B列中的值来删除重复项。如果第2行和第3行在B列中具有相同的值,则删除第3行Javascript google应用程序脚本数组从顶部删除重复值,javascript,arrays,google-apps-script,Javascript,Arrays,Google Apps Script,我有一个工作代码,它通过比较B列中的值来删除重复项。如果第2行和第3行在B列中具有相同的值,则删除第3行 function removeDuplicates() { var sheet = SpreadsheetApp.getActiveSheet(); var data = sheet.getDataRange().getValues(); var newData = new Array(); for(i in data){ var row = data[i];
function removeDuplicates() {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
var newData = new Array();
for(i in data){
var row = data[i];
var duplicate = false;
for(j in newData){
if(row[1] == newData[j][1]){
duplicate = true;
}
}
if(!duplicate){
newData.push(row);
}
}
sheet.clearContents();
sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}
如何更改此代码以从“编辑此”构建数组,从而不删除第3行,而删除第2行?我认为这样就可以了
function removeDuplicates() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=sh.getDataRange();
var row=rg.getRow();
var col=rg.getColumn();
var vA=rg.getValues();
var nA=[];
var duplicate=true;
for(var i=0;i<vA.length;i++)
{
duplicate=false;
for(var j=0;j<nA.length;j++)
{
if(vA[i][1]==nA[j][1])
{
duplicate=true;
nA[j]=vA[i];
}
}
if(!duplicate)
{
nA.push(vA[i]);
}
}
rg.clearContent();
sh.getRange(row, col, nA.length, nA[0].length).setValues(nA);
}
函数removeDuplicates(){
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=sh.getDataRange();
var row=rg.getRow();
var col=rg.getColumn();
var vA=rg.getValues();
var nA=[];
var重复=真;
对于(var i=0;它似乎什么都没做。对此我很抱歉。有时我看不懂整个问题。但我想这就是你想要的。现在最后一个副本是保留的。你能用简单的英语解释代码发生了什么吗?代码运行良好。显然我的大脑没有。我已经对我认为是的内容添加了注释继续,谢谢。