0

我的 Google 电子表格中有两张表格。

  1. 主跟踪
  2. 每日追踪

Master Tracking 从其他跟踪表中提取信息,并更新单元格 M7 中每个驾驶员驾驶的英里数。

我想使用日期(A 列)和行驶里程数(B 列)设置每日跟踪。

我想编写一个 Google Apps 脚本,它将数据从 Master Tracking!M7 复制到 Daily Tracking(B 列),但每次运行脚本时都会复制到一个 NEW ROW 中。我计划使用触发器让它在每个工作日结束时运行。

我有这个到现在,但它不起作用。

function copyFunction() {

  var inputRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Master Tracking").getRange("M7:M7");

  var inputValues = inputRange.getValues();

  var outputRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Daily Tracking").getRange("B:B").getLastRow();

  outputRange.setValue(inputValues);
}

我想不通。我可以将其粘贴到一个特定的单元格中,但我不知道如何将其粘贴到新行中。也许 getLastRow 会起作用。我不知道。

另外,如何在每日跟踪的 A 列中添加时间戳?

请帮忙!

4

1 回答 1

1

没有测试它,但应该可以工作:(见代码中的注释)

function copyFunction() {
  var inputRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Master Tracking").getRange("M7");
  var inputValue = inputRange.getValue();// use simple getValue without S, get a simple value
  var last = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Daily Tracking").getLastRow();// get the last row on this sheet
  var outputRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Daily Tracking").getRange(last+1,1,1,2);// getRange col A & B +1 after last row
  outputRange.setValues([[Utilities.formatDate(new Date(), Session.getTimeZone(), 'MM-dd-yyyy'),inputValue]]);// date string in col A and value in col B in a 2D array (note the S in setValues) - 
}
于 2013-04-03T00:07:05.537 回答