0

我正在使用 Zapier 将外部内容自动插入到 Google 电子表格选项卡中,它似乎直接在最后一个非空行下方插入一行,而不是替换下一个空行中的内容。

因此,如果第 7 行是最后一行,Zapier 在第 7 行下插入新行,旧的第 8 行变成第 9 行。

然后我有另外两个选项卡,它们都可以在网络上查看(第一个不是),它们引用了第一个选项卡中的内容,但是随着新内容的添加,这些格式的引用data!a8也会被移动。如果我使用data!$a$8,那么我必须手动更改 500 行。

不管有没有编码,有没有办法让 Zapier 插入行但仍然自动引用该行?

4

2 回答 2

0

对于那些试图在没有脚本的情况下执行此操作的人来说,这似乎是不可能的。

脚本

  1. 创建一个如下所示的函数。请注意,我们正在读取一张表(AutomaticImport)并写入表 WebData

    function fncUpdateWebData() { var ss = SpreadsheetApp.getActiveSpreadsheet(), sheet = ss.getSheetByName("AutomaticImport"), sheetWeb = ss.getSheetByName("WebData"), arrRides = sheet.getDataRange().getValues(), row,col,iOutputRow,strURL;

    iOutputRow = 2; for ( iRow = 1; iRow < arrRides.length; iRow++) { sheetWeb.getRange(iOutputRow,1).setValue(arrRides[iRow][5]); // date strURL = '=HYPERLINK("' + 'https://www.strava.com/activities/' + arrRides[iRow][7] + '","' + arrRides[iRow][8] + '")'; sheetWeb.getRange(iOutputRow,2).setValue(strURL); // start & link sheetWeb.getRange(iOutputRow,3).setValue(arrRides[iRow][4]); // Distance sheetWeb.getRange(iOutputRow,4).setValue(arrRides[iRow][0]); // Avg Speed
    iOutputRow++; } }

    1. 资源/当前项目触发器和新触发器中,使用新函数名称“来自电子表格”并选择“onChange”

我希望他能帮助你度过难关。

于 2015-04-25T11:00:44.457 回答
0

我知道这是一个非常非常晚的答案,但是我遇到了同样的问题并且几乎使用了公认的解决方案,然后才意识到有更好、更简单的方法。

它实际上在 Zapier 文档中,就在这里。解决方案是创建两个 Google 表格,一个用于 Zapier,另一个用于您的公式。将 Zapier 连接到第一个工作表,然后使用IMPORTRANGE命令将必要的列复制到第二个工作表中。在第二张表中写下你的公式,你会注意到额外的间接层会阻止谷歌在将一行添加到源范围时重写它们!

Tl;博士:RTFM,像往常一样。

于 2016-12-30T08:30:59.997 回答