这是我的第一个问题,我环顾四周,但没有找到解决问题的答案。对不起,我很抱歉。
我有一个小脚本,每次您使用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');}
}
任何帮助将不胜感激,因为我现在正在手动进行,这很浪费时间...
此致
奥古斯丁
更新:
错误: 9月5日,IDcreator脚本自动演奏。 2018à17:21:27 1236.855 sÉchec
getLastColumn和getLastRow也停止了整个文件的工作。