Google App中电子表格的openById异常



我实现了一个Google Slide Add On,它复制一个链接的电子表格,然后打开它(以检索此工作表中的所有图表)。

这是问题中的代码:

// id is the spreadsheet id
var sheetFile = DriveApp.getFileById(id);
var copy = sheetFile.makeCopy(sheetFile.getName() +'_'+ 'Copy');
Utilities.sleep(200);
// exception happens here
var sheet = SpreadsheetApp.openById(copy.getId());

不幸的是,对于一些表中出现以下错误:

Exception: Service Spreadsheets failed while accessing document with id *************.

所以我试图找出为什么有些电子表格工作,有些不是,它看起来不适合从excel转换电子表格。因此,我通过Menu->File->Convert to Google Sheet将其中一个excel表格转换为Google工作表进行了测试。

这没有工作…所以我复制了谷歌幻灯片上的图表,我发现我无法从这个转换后的电子表格中导入图表到谷歌幻灯片上。即使我只是在这个工作表中创建一个新图表,每次我进入幻灯片应用程序并尝试从这个电子表格中插入图表时,也没有图表显示在选择窗口中。

看起来,当转换excel到谷歌表格时,出现了一些问题,我试图多次做转换步骤…但是没有变化。

[编辑]我也试过禁用V8支持。

[Edit2]所以出于某种原因,我现在可以使用SpreadsheetApp.openById(copy.getId());当电子表格转换为谷歌表格。但正如我之前提到的,它仍然不可能手动添加任何图表从这个谷歌表到演示…

您收到的错误信息Service Spreadsheets failed while accessing document with id ID实际上可能与谷歌方面的已知问题有关。

我建议你在这里标注问题,因为所有与此相关的更新都会在那里发布。

如果这是一个故障,我会尝试以这种方式链接命令:

var sheetFile = DriveApp.getFileById(id);
var copy_name = sheetFile.getName() +'_'+ 'Copy';
var sheet = SpreadsheetApp.openById(sheetFile.makeCopy(copy_name).getId());

这样,在文件被复制之前,openById命令不会触发。

最新更新