有没有一种方法可以自动在Google表格中保存数据?

时间:2020-01-02 06:32:21

标签: google-apps-script google-sheets

有没有一种方法可以自动保存在Google工作表中的临时区域(风险是根据输入的值计算得出的值)中输入的数据。我有一个工作空间,现在需要保存我的所有日​​志以供以后查看。 请参阅样本表。 Created a sample data screenshot

谢谢

2 个答案:

答案 0 :(得分:0)

有两种方法可以做到这一点。您需要创建各种日志,并使仪表板引用最底部的条目。如果您具有App Script经验,那将是更好的解决方案,但是如果没有它,您可以使用Google Form来编辑仪表板。由于需要对输入进行硬编码,因此不会有任何公式可以单独使用,并且公式只能将值作为数组返回(其他单元格中的镜像/更改值)。

您可以使用链接到电子表格的Google表单,以便某人必须提交带有输入的表单以更改仪表板。然后,您将在timestamp列上使用= Max()函数,然后使用Vlookup或Index(match())返回基于Max(timestamp)的仪表板变量。

另一种方法是创建与输入表类似的基本单元格集合,并添加一个按钮,如果单击该按钮,将获取这些值并在仪表板的变量中更新它们,但也将它们记录在另一张纸上。 (It would be something like this

答案 1 :(得分:0)

谢谢大家的建议。我最终使用下面的脚本来完成任务。

function FormExec() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sinput = ss.getSheetByName("sheet1");
  var soutput = ss.getSheetByName("sheet2");
  var input = sinput.getRange(14, 3, 15).getValues();

  var flatin = [].concat.apply([], input);
  soutput.getRange(soutput.getLastRow()+1, 1,1, 15).setValues([flatin]);
  soutput.insertRowAfter(soutput.getLastRow());
  Logger.log(input);  
}