Javascript 使用Google Sheet检查特定列的重复条目
我有一个谷歌表单,由于Zapier的电话,它会定期更新。每隔一段时间,工作表中就会添加一行新内容,我想检查工作表的其余部分是否有重复内容,如果发现重复内容,请将其删除。可能的重复项仅在某些字段上,例如:Javascript 使用Google Sheet检查特定列的重复条目,javascript,loops,google-apps-script,google-sheets,Javascript,Loops,Google Apps Script,Google Sheets,我有一个谷歌表单,由于Zapier的电话,它会定期更新。每隔一段时间,工作表中就会添加一行新内容,我想检查工作表的其余部分是否有重复内容,如果发现重复内容,请将其删除。可能的重复项仅在某些字段上,例如: 添加的条目有:Title=“My super duper night run”,Distance=“3.6”,Time=“24.3” 已经有一个条目:Title=“night run”、Distance=“3.6”、Time=“24.3” 已经有一个条目:Title=“My super dupe
我有VBA方面的一些经验,并且已经构建了基本工作表脚本,但不确定如何构建代码以在工作表中循环(自底向上),然后在找到重复项时删除。假设第2列和第3列的匹配项是重复项,那么这应该可以工作
function deleteDups() {
const ss=SpreadsheetApp.getActive();
const sh=ss.getActiveSheet();
const startrow=2;
const rg=sh.getRange(startrow,1,sh.getLastRow()-startrow+1,sh.getLastColumn());
const vs=rg.getDisplayValues();//this get the data as string
let uA=[];//unique array
let d=0;//delete counter
vs.forEach(function(r,i){
let p=r[1]+r[2];//adding two strings together is a string
//uA is an array of strings
if(uA.indexOf(p)==-1) {
uA.push(p);//uA is made up of all the unique strings
}else{
sh.deleteRow(i+startrow-d++);//the delete counter makes up for the rows that get deleted because the index into the data remains the same even though the row is now gone.
}
});
}
欢迎光临。请按照中的建议添加您的搜索/研究工作的简要说明。如果您为删除的每一行保留计数器,则可能重复您不必从底部循环。向我显示电子表格的图像,并准确地告诉我什么是重复的谢谢-将检查此信息。