将代码更新为高级google服务后出现问题

时间:2018-11-05 01:01:04

标签: google-apps-script

我刚刚更新了脚本以使用新的高级google 服务。在这种情况下,我已经在文件夹中插入了文件,现在我需要 格式化文件:插入工作表,更改颜色等。我在使用文件时遇到问题,因为使用此服务后我无法使用该文件,但出现此错误:“ 找不到insertSheet对象FileIterator 中的“函数”。如果您可以带我到可以找到解决方案的地方,那将非常有帮助。

这是我正在使用的代码:

function HAR() {
//This is the new part of the code...
var name = "Template";
var folder = DriveApp.createFolder("HAR");
var folder_id = folder.getId();
var resource = {
    title: name,
    mimeType: MimeType.GOOGLE_SHEETS,
    parents: [{ id: folder_id }]
  }
var fileJson = Drive.Files.insert(resource);
var File_id = fileJson.id;
var Template = DriveApp.getFilesByName("Template");// I guess this is not working
//This is the old part of the code...
const ssNames = ["California","Arizona","Florida","Los Angeles"];
const states = ssNames.length;
var x;
    for (x = 0; x < sNames.length; x++){
    Template.insertSheet(sNames[x]); //I can't manage to insert the sheets
    }
Template.getSheetByName("Sheet 1").activate();
Template.deleteActiveSheet(); 
}

工作完美,可以创建文件夹并在其中创建文件。

谢谢。

1 个答案:

答案 0 :(得分:2)

Template是一个FileIterator.,因此已经为其分配了一个值,但是您的代码并未显示Template被分配了一个值,因此您必须拥有尚未使用的其他代码。 t显示。

FileIterator仅提供3种方法:

  • getContinuationToken()
  • hasNext()
  • next()

您可能希望将工作表插入到新创建的电子表格文件中。

var File_id = fileJson.getId();
var newSS_file = SpreadsheetApp.openById(File_id);