【问题标题】:Automatically Detect New entry and create another new row自动检测新条目并创建另一个新行
【发布时间】:2018-01-13 08:36:07
【问题描述】:

我有一个谷歌电子表格,其中有两张具有相同行数的工作表。

我想做什么: 当在Sheet1的最后一行之后写入新条目时,它会自动复制Sheet2的最后一行并粘贴到后面。 (新行将在此之后的最后一行,并且两张表将再次具有同一行)

由于我没有过多地使用google script,我不知道如何完成它。我应该使用哪些函数或公式?

提前致谢。

【问题讨论】:

  • 添加z行时,v的副本会添加到v之后。
  • 没错。 V是由公式组成的,所以v的副本数据不同。

标签: javascript google-apps-script google-sheets


【解决方案1】:

您可以使用onEdit() 函数、getLastRow() 方法和copyTo()

function onEdit(){

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];

  // This logs the value in the very last cell of this sheet
  var lastRow = sheet.getLastRow();
  var lastColumn = sheet.getLastColumn();
  var lastCell = sheet.getRange(lastRow, lastColumn);
  Logger.log(lastCell.getValue());

  var lastRowAndCol = lastRow + ":" + lastRow;
  var newRowOnEnd = (lastRow+1) + ":" + (lastRow+1);

  Logger.log('lastRowAndCol: ' + lastRowAndCol);
  Logger.log('newRowOnEnd: ' + newRowOnEnd);

  sheet.getRange(lastRowAndCol).copyTo(sheet.getRange(newRowOnEnd));
};

Google Documentation - onEdit

Google Documentation - getLastRow

copyTo

【讨论】:

  • 很高兴你能成功。我确实编辑了答案并使用一些文本公式进行了一些更改以获取单元格地址。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-04
  • 2022-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-18
相关资源
最近更新 更多