Google Apps Script - внезапно перестал работать setValue () - PullRequest
0 голосов
/ 05 сентября 2018

Это мой первый вопрос, я оглянулся и не нашел ответа на свою проблему. Извините, если я упустил детали.

У меня есть небольшой скрипт для «создания» нового файла из шаблона каждый раз, когда вы вручную запускаете скрипт, добавленный в Меню с помощью ui.createMenu.

Он работал без проблем несколько месяцев, а на прошлой неделе перестал работать. Я отладил его, и он всегда застревает в строках с помощью getValue () или setValue (). Я пытался изменить тип с строки a1 на число, чтобы установить setValue () на setFormula ().

Код всегда работал, запрашивая в нотации a1 ячейку, содержащую заголовок рецепта, получая его с помощью getValue (), затем автоматически создает копию шаблона, изменяя заголовок на содержимое вышеупомянутой ячейки. После этого он открывает файл и копирует его URL в ячейку, выделенную для этого с помощью setValue () в исходном файле.

Макет:

Колонка B содержит названия рецептов Столбец E содержит URL-адрес выделенных файлов каждого рецепта

function IDcreator()
{
 //Prompt
 var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Liste des recettes');
var ui = SpreadsheetApp.getUi();
var result = ui.prompt('To create a new ID Recette, please...','Enter the cell with the title with the format a1' , ui.ButtonSet.OK_CANCEL);

//User's respons
var button = result.getSelectedButton();
var title = result.getResponseText();

if (button == ui.Button.OK)
{  
 var titleAuxRange = sheet.getRange(title);
 var titleAux = titleAuxRange.getValue();

 var fileID = '1huAX42bwp8jMJ8GQSW2FWM_KWnbBSnzH1zClKbaH8FY';

 var file = DriveApp.getFileById(fileID).makeCopy(titleAux);

 var newURL = file.getUrl();
 var html = "<script>window.open('"+newURL+"');</script>";
 var userInterface = HtmlService.createHtmlOutput(html);
 SpreadsheetApp.getUi().showModalDialog(userInterface, 'Open new ID'); 
 //Force new tab to open

 var auxCol = sheet.getRange(title).getColumn();
 var auxRow = sheet.getRange(title).getRow();
 auxCol += 3;

 sheet.getRange(auxRow,auxCol).setValue(newURL);
}

else if (button == ui.Button.CANCEL)
{ui.alert('Création de nouvelle ID Recette annulée');}
else if (button == ui.Button.CLOSE)
{ui.alert('Création de nouvelle ID Recette annulée');}
}

Любая помощь будет очень признательна, так как я делаю это вручную прямо сейчас, и это пустая трата времени ...

С уважением,

Агустин

UPDATE:

  • Ошибка в скрипте приложений: Скрипт IDcreator автоном 5 сентября. 2018 à 17:21:27 1236,855 с Échec

  • getLastColumn и getLastRow также перестали работать по всему файлу.

  • При использовании встроенной функции importRange в другом файле с URL-адресом файла с рецептами эта функция не работает.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...