【问题标题】:Using/Calling Google Sheet's embedded File Import function in google apps script在 Google Apps 脚本中使用/调用 Google Sheet 的嵌入式文件导入功能
【发布时间】:2016-05-24 14:48:44
【问题描述】:
有没有办法在Apps Script 中调用Google Sheet 的File import 函数?我正在尝试将 csv 文件从 google drive folder 导入到 Google 工作表。但我希望能够设置一个automated trigger 以定期从同一个谷歌驱动器文件夹中导入同名的 csv 文件。
我知道我可以自己编写一个导入函数。我实际上是根据我在 github 上找到的其他人的代码编写了这样的函数。但是我的导入功能非常慢,因为它包含循环。另外,使用脚本解析整个 csv 文件非常慢。所以我只想使用 Google Sheet 的嵌入式导入功能。 -> 我试过了,它比使用我的脚本导入文件要快。
【问题讨论】:
标签:
csv
google-apps-script
import
google-drive-api
google-sheets-api
【解决方案1】:
菜单命令只能通过用户界面使用。通过脚本,您可以使用 Advanced Drive Service 将 CSV 文件转换为 Google 表格格式。首先,按照页面上的说明启用服务(API 的 v2)。然后在 Apps Script 中进行如下操作:
var fileId = '0B.......jQ'; // Id of the CSV file
var newFile = Drive.Files.copy({title: 'Converted File'}, fileId, {convert: true});
var newFileId = newFile.id;
现在您的 Google Drive 中有一个转换后的文件(名称为“Converted File”),变量 newFileId 包含您可以使用 SpreadsheetApp 的方法访问此文件的 ID。特别是,您可以获取其内容并将其放在其他地方。