ЖА
Size: a a a
ЖА
ЖА
ЖА
var ss = SpreadsheetApp.getActive();
var data = ss.getDataRange().getValues();
function onEdit(e) {
//e.range.setNote(1)
}
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
function onOpen(e) {
SpreadsheetApp.getUi()
.createMenu('Проверить Дубликат')
.addItem('Проверить', 'main')
//.addSeparator()
//.addSubMenu(SpreadsheetApp.getUi().createMenu('My sub-menu')
// .addItem('One sub-menu item', 'mySecondFunction')
// .addItem('Another sub-menu item', 'myThirdFunction'))
.addToUi();
}
function readData() {
var column = 2;
var lastRow = sheet.getLastRow();
var columnRange = sheet.getRange(1, column, lastRow);
var rangeArray = columnRange.getValues();
rangeArray = [].concat.apply([], rangeArray);
//Logger.log(rangeArray);
return rangeArray;
}
function findDuplicates(data) {
var sortedData = data.slice().sort();
var duplicates = [];
for (var i = 0; i < sortedData.length - 1; i++) {
if (sortedData[i + 1] == sortedData[i]) {
duplicates.push(sortedData[i]);
}
}
//Logger.log("Duplicates: " + duplicates);
return duplicates;
}
function getIndexes(data, duplicates) {
var column = 2;
var indexes = [];
i = -1;
for (var n = 0; n < duplicates.length; n++) {
while ((i = data.indexOf(duplicates[n], i + 1)) != -1) {
indexes.push(i);
}
}
//Logger.log("Indexes: " + indexes);
for (n = 0; n < indexes.length; n++) {
sheet.getRange(indexes[n] + 1, column).setBackground("red");
}
}
function main() {
var data = readData();
var duplicates = findDuplicates(data);
getIndexes(data, duplicates);
}
A
ЖА
ЖА
v
ЖА
v
var ss = SpreadsheetApp.getActive();
var data = ss.getDataRange().getValues();
function onEdit(e) {
//e.range.setNote(1)
}
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
function onOpen(e) {
SpreadsheetApp.getUi()
.createMenu('Проверить Дубликат')
.addItem('Проверить', 'main')
//.addSeparator()
//.addSubMenu(SpreadsheetApp.getUi().createMenu('My sub-menu')
// .addItem('One sub-menu item', 'mySecondFunction')
// .addItem('Another sub-menu item', 'myThirdFunction'))
.addToUi();
}
function readData() {
var column = 2;
var lastRow = sheet.getLastRow();
var columnRange = sheet.getRange(1, column, lastRow);
var rangeArray = columnRange.getValues();
rangeArray = [].concat.apply([], rangeArray);
//Logger.log(rangeArray);
return rangeArray;
}
function findDuplicates(data) {
var sortedData = data.slice().sort();
var duplicates = [];
for (var i = 0; i < sortedData.length - 1; i++) {
if (sortedData[i + 1] == sortedData[i]) {
duplicates.push(sortedData[i]);
}
}
//Logger.log("Duplicates: " + duplicates);
return duplicates;
}
function getIndexes(data, duplicates) {
var column = 2;
var indexes = [];
i = -1;
for (var n = 0; n < duplicates.length; n++) {
while ((i = data.indexOf(duplicates[n], i + 1)) != -1) {
indexes.push(i);
}
}
//Logger.log("Indexes: " + indexes);
for (n = 0; n < indexes.length; n++) {
sheet.getRange(indexes[n] + 1, column).setBackground("red");
}
}
function main() {
var data = readData();
var duplicates = findDuplicates(data);
getIndexes(data, duplicates);
}
EN
v
M
EN
C
Команды
Донат
Памятки
+
(знак плюса) или "спасибо" в ответ на сообщение — увеличивает репутациюM
EN
EN
M
EN