答案 0 :(得分:3)
您可以借助以下脚本突出显示重复项:
function onOpen() {
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var entries = [{name : "Check Duplicates",functionName : "duplicates"}];
sheet.addMenu("Scripts", entries);
};
function duplicates() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('Sheet1');
var r = s.getRange("A:B");
var v = r.getValues();
r.setBackground('white');
var f = r.getBackgrounds();
var lastrow = getLastPopulatedRow(v);
for( var i=0;i<lastrow;i++){
for( var j=i+1;j<lastrow;j++){
if( ( v[i][0]==v[j][0] && v[i][1]==v[j][1] ) || ( v[i][0]==v[j][1] && v[i][1]==v[j][0] ) ) {
f[i][0]='lightgreen';
f[i][1]='lightgreen';
f[j][0]='lightgreen';
f[j][1]='lightgreen';
}
}
}
r.setBackgrounds(f);
};
function getLastPopulatedRow(data) {
for (var i=data.length-1;i>=0;i--)
for (var j=0;j<data[0].length;j++)
if (data[i][j]) return i+1;
return 0;
};
从脚本编辑器运行“duplicates”功能。您还可以从电子表格中的自定义菜单“脚本”运行它。
Here is the Screenshot
答案 1 :(得分:1)
我认为@jwilson给出了正确答案。 但是,这是一种快捷方法,它可能对您有所帮助。
选择一个单元格并使用CONCATENATE
函数连接两个列值,并在它们之间加space
。然后,如果它们有重复,您可以搜索当前列。
例如,使用您的示例图片,选择您的列 C1 并添加=CONCATENATE(A1," ",B1)
并将其拖动到适用于 C 列中所有单元格的公式。然后为列 C 添加条件格式规则,以使用=countif(C:C,C1)>1
检查重复项
在这里发生的是,列 A 和 B 的值首先连接,然后比较它们是否在记录中有重复的条目。
答案 2 :(得分:0)
使用以下自定义公式进行条件格式化:
String query ="SELECT * FROM Suppliers";