2017-12-18 119 views
0

如果工作表由IFTTT而非人员通过工作表浏览器进行编辑,是否可以使Google电子表格脚本运行?通过IFTTT更改后触发电子表格脚本

背景:IFTTT将一个值放在特定的单元格中。我的谷歌电子表格脚本说如果单元格不是空的;插入一个新行。所以我的脚本正在运行,如果我手动编辑了我的工作表,并且我在该单元格中添加了一个值。但是,如果IFTTT向电子表格添加新条目,则不会发生任何事情。我试过onEdit和onChange触发器都无济于事。有什么建议么?

我使用的实际脚本如下:

(function InsertRow() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheetByName('Diagramm'); 
    var values = sheet.getRange('B2').getValues(); 

    if (values[0][0] != "") 
     sheet.insertRowBefore(2); 

})(); 

所以我也跟着the tutorial on Google Driver API Push Notifications,并添加以下代码到我的脚本:

function listFiles() { 
    var optionalArgs = { 
    maxResults: 10 
    }; 
    var response = Drive.Files.list(optionalArgs); 
    var files = response.items; 
    if (files && files.length > 0) { 
    Logger.log('Files:'); 
    for (i = 0; i < files.length; i++) { 
     var file = files[i]; 
     Logger.log('%s (%s)', file.title, file.id); 
    } 
    } else { 
    Logger.log('No files found.'); 
    } 
}; 

但是我现在需要做的?对不起,我不是一个好的程序员...

回答

0

你必须使用Drive API push notifications来接受这些改变。

using Apps Script with the Drive API上的此示例有助于开始。

Spencer Easton has also provided a tutorial on get GMail push notifications这会给你一些提示,因为你必须在开发控制台中进行一些更改。

+0

我跟着这个例子,并在脚本中添加了代码(更多信息在我的第一篇文章中)。但是,你能帮我做我现在必须做的事吗? :) –

+0

我担心这会引起很大的影响,并且花了我一些时间来解决问题,可能不是开始编程生涯的最佳项目 - 对不起。 –

相关问题