Google apps script 从上到下删除重复项的Google脚本
我有一个脚本,它结合了三个脚本来执行以下操作: 1) 将行从一个选项卡插入到另一个选项卡的顶部 2) 从刚刚添加数据的选项卡中删除重复项 3) 清除刚从中移植数据的旧选项卡 对于重复数据消除脚本,它从底部开始删除行,然后向上删除行。所以我已经建立并删除了现有的数据。我需要它做的是从顶部开始,然后向下。因此,如果发现从第一个脚本移植过来的新行记录是重复的,它应该删除这些记录 如何让重复数据消除脚本以相反的方式进行处理 我确实在下面的链接中找到了反向逻辑,但我找不到一种方法使它与我的脚本一起工作并不断出错。我也不确定这是否是适合我整个脚本的最佳方法 链接: 如果发现工作表顶部的新行重复,请删除顶部的新行。尝试以下操作:Google apps script 从上到下删除重复项的Google脚本,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我有一个脚本,它结合了三个脚本来执行以下操作: 1) 将行从一个选项卡插入到另一个选项卡的顶部 2) 从刚刚添加数据的选项卡中删除重复项 3) 清除刚从中移植数据的旧选项卡 对于重复数据消除脚本,它从底部开始删除行,然后向上删除行。所以我已经建立并删除了现有的数据。我需要它做的是从顶部开始,然后向下。因此,如果发现从第一个脚本移植过来的新行记录是重复的,它应该删除这些记录 如何让重复数据消除脚本以相反的方式进行处理 我确实在下面的链接中找到了反向逻辑,但我找不到一种方法使它与我的脚本一起工作并不
function removeDuplicates() {
var sheet=SpreadsheetApp.getActiveSheet();
var rows=sheet.getLastRow();
var firstColumn=sheet.getRange(1, 2, rows, 1).getValues();
firstColumn = firstColumn.map(function(e){return e[0]})
var uA=[];
for (var i=rows;i>0;i--) {
if (uA.indexOf(firstColumn[i-1])!=-1) {
sheet.deleteRow(i);
}else{
uA.push(firstColumn[i-1]);
}
}
}
谢谢你的意见。运行后,它似乎没有删除任何重复项,尽管运行时我没有收到任何错误。我只是更改了它,然后再试一次。很高兴帮助您。
function removeDuplicates() {
var sheet=SpreadsheetApp.getActiveSheet();
var rows=sheet.getLastRow();
var firstColumn=sheet.getRange(1, 2, rows, 1).getValues();
firstColumn = firstColumn.map(function(e){return e[0]})
var uA=[];
for (var i=rows;i>0;i--) {
if (uA.indexOf(firstColumn[i-1])!=-1) {
sheet.deleteRow(i);
}else{
uA.push(firstColumn[i-1]);
}
}
}