Создаю листы копированием листа-примера, именуя их по списку из диапазона на другом листе.
Вопрос заключается в следующем: иногда надо запустить создание, чтобы досоздать 1-2 листа с именами из списка, листов с которыми ещё нет, не удаляя остальные. При попытке запустить код, если хоть один лист с именем из списка уже есть, документ, естественно выдает ошибку, что лист с таким именем уже есть и останавливает цикл. Как сделать, чтобы если лист с именем из списка уже есть в документе, это имя просто пропускалось? Чтобы создались листы только с теми именами, листы с которыми ещё отсутствуют?
Примерно: перед setName(name) проверяется .getSheets() и если такое name уже есть, то перейти к следующему name.
function CopySheets() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName('СписокИмён');
var ranges = sheet.getDataRange();
var lastRow = ranges.getLastRow();
var names = sheet.getRange(`A3:A${lastRow}`).getDisplayValues().flat();
names = names.filter(name => { return (name && name.length > 0) });
var sheetSample = ss.getSheetByName('Пример');
names.forEach(name => {
var sheetTemp = sheetSample.copyTo(ss)
sheetTemp.setName(name);
});
Заранее благодарю!