理想情况下,我希望能够搜索整个工作表(或单元格范围)并删除该工作表中重复的所有值(例如,如果“ 2 ”出现在A3
,B8
和D4
,然后我想将其保留在A3
中,并在B8
和D4
中将其删除。)>
我通常通过在一行或一行中查看重复项(使用UNIQUE
函数而不是查看整个工作表来解决此问题。
我该怎么做?
答案 0 :(得分:0)
这里有一些代码可以完成整个工作表。
请注意,它将适用于文本和数字,并且将覆盖所有公式。
function removeDuplicates() {
var sheet = SpreadsheetApp.getActive().getActiveSheet();
var range = sheet.getDataRange();
var values = range.getValues();
var traversedValues = [];
var rowCount = values.length;
var colCount = values[0].length;
for (var row = 0; row < rowCount; ++row) {
for (var col = 0; col < colCount; ++col) {
var value = values[row][col];
if (traversedValues.indexOf(value) > -1) {
values[row][col] = null;
} else {
traversedValues.push(value);
}
}
}
range.setValues(values);
}