Я нашел этот код с помощью поиска в Google (https://blog.cloudstitch.com), и он работает, но мне нужно настроить его для двух дополнительных вещей:
- Мне нужно, чтобы число было тремя цифрами - гдев коде я устанавливаю длину?
- Если я вставлю строку, идентификатор будет дубликатом соседней строки.
Для меня важно, чтобы после того, как идентификатор былбыло назначено, оно никогда не изменится.
function AutoID() {
var AUTOINC_COLUMN = 0;
var HEADER_ROW_COUNT = 1;
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var worksheet = spreadsheet.getSheetByName("Sheet1");
var rows = worksheet.getDataRange().getNumRows();
var vals = worksheet.getSheetValues(1, 1, rows+1, 2);
for (var row = HEADER_ROW_COUNT; row < vals.length; row++) {
try {
var id = vals[row][AUTOINC_COLUMN];
Logger.log(id);Logger.log((""+id).length ===0);
if ((""+id).length === 0) {
// Here the columns & rows are 1-indexed
worksheet.getRange(row+1, AUTOINC_COLUMN+1).setValue(row);
}
} catch(ex) {
// Keep calm and carry on
}
}
}
Ссылка на Google Sheet:
https://docs.google.com/spreadsheets/d/1nN8Iysc-A0cihSvJ-vRse1KDrmNNpj9Zv_y3VYT9S-E/edit?usp=sharing