用于复制单元格并添加复制日期和时间的脚本

时间:2019-02-14 17:10:24

标签: google-apps-script google-sheets

这里需要一些帮助。

我有一个带有脚本的工作表,该脚本每5分钟更新一次,从API中提取数据。

我找到了一个脚本,然后将一个单元格(D2)复制到第一个单元格中的另一张纸上,然后将其复制到运行后的每张纸上。

function tableCopy() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sourceSheet = ss.getSheetByName("Data");
  var targetSheet = ss.getSheetByName("Master");
  var values = sourceSheet.getRange("D2").getValues();

  var valuesLength = values.length;
  if (!valuesLength) return; 





  var lastRow = targetSheet.getLastRow();
  var requiredRows = lastRow + valuesLength - targetSheet.getMaxRows();
  if (requiredRows > 0) targetSheet.insertRowsAfter(lastRow, requiredRows);
    targetSheet.getRange(lastRow + 1, 1, valuesLength, values[0].length).setValues(values);



}

如何将上面脚本运行的日期和时间添加到复制了数据的列旁边的列中。

1 个答案:

答案 0 :(得分:1)

您只需将new Date()添加到值数组中即可。

function tableCopy() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sourceSheet = ss.getSheetByName("Data");
  var targetSheet = ss.getSheetByName("Master");
  var values = sourceSheet.getRange("D2").getValues();

  var valuesLength = values.length;
  if (!valuesLength) return; 

  var lastRow = targetSheet.getLastRow();
  var requiredRows = lastRow + valuesLength - targetSheet.getMaxRows();
  if (requiredRows > 0) targetSheet.insertRowsAfter(lastRow, requiredRows);

  values[0].push(new Date()); //Add Date to the 2D array.
  targetSheet.getRange(lastRow + 1, 1, valuesLength, values[0].length).setValues(values);


}