谷歌电子表格之间的双向内容同步

时间:2012-12-31 20:59:32

标签: database-design sync google-sheets dashboard database-mirroring

我正在创建一个Google电子表格信息中心,以汇总来自许多不同项目的内容。所有项目内容都包含在其他Google电子表格中。对于每个项目,都有一个任务列表/待办事项列表。我试图找到一个解决方案,允许我执行以下操作:

1)将每个项目电子表格中的任务列表拉到仪表板上的一个主任务表中

2)在项目任务单上添加/编辑/删除任务,然后自动更新主任务表。

3)在主任务表上添加/编辑/删除任务,然后自动更新项目任务表。

使用importrange()和query()函数,数字1和2相当简单,但据我所知,这些只是单向解决方案。有关3号的任何帮助吗?

样本文件:

Project 1

Project 2

Dashboard

1 个答案:

答案 0 :(得分:0)

您可以使用此脚本并执行任务。但这适用于同一电子表格。我无法将其与两个不同的电子表格相关联。

function onEdit()

{
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var activeSheet = ss.getActiveSheet();
  var activeSheetName = ss.getActiveSheet().getSheetName();

  if( activeSheetName == "Sheet1" || activeSheetName == "Sheet2" )
  {
    var activeCell = activeSheet.getActiveCell();
    var activeCellinA1 = activeCell.getA1Notation();

    if( activeCellinA1 == "A1" )
    {
      var activeCellValue = activeCell.getValue();
      if( activeSheetName == "Sheet1" )
        ss.getSheetByName("Sheet2").getRange("A1").setValue(activeCellValue);
      if( activeSheetName == "Sheet2" )
        ss.getSheetByName("Sheet1").getRange("A1").setValue(activeCellValue);
    }      
  }
}