1

我有一个电子表格,可以计算我在不同账户中的总银行储蓄。

我想编写一个脚本,该脚本在运行时会将当天计算的总节省连同时间戳一起复制到另一列。这个想法是,然后我可以将这些数据绘制在图表中,以查看随时间绘制的储蓄趋势。

实际上,这意味着将 A5 的值复制到 B 列的第一个空行并在 C 列的第一个空行中打印日期。

有谁知道如何做到这一点?

谢谢!

4

1 回答 1

1

将此复制到您的电子表格脚本中,并将其设置为每日触发功能。

function recordTodaysBalance() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var balance = sheet.getRange("A5").getValue();
  var nextRow = getFirstEmptyRow('B');
  // Record current balance and timestamp at end of columns B & C
  sheet.getRange(nextRow, 2, 1, 2).setValues([balance,new Date()]);
};

// From https://stackoverflow.com/a/9102463/1677912
function getFirstEmptyRow(columnLetter) {
  columnLetter = columnLetter || 'A';
  var rangeA1 = columnLetter + ':' + columnLetter;
  var spr = SpreadsheetApp.getActiveSpreadsheet();
  var column = spr.getRange(rangeA1);
  var values = column.getValues(); // get all data in one call
  var ct = 0;
  while ( values[ct][0] != "" ) {
    ct++;
  }
  return (ct+1); // +1 for compatibility with spreadsheet functions
}

改编自这个答案

于 2013-09-07T15:31:27.740 回答