Google Apps脚本。使脚本在活动行中工作

时间:2015-04-10 22:37:42

标签: google-apps-script google-sheets

我使用简单的表来记录我应该为我的客户做的任务。每当我到达任务时,我都会在历史单元格中发送有关添加日期的信息。 现在我需要自动化这个过程并有一个脚本:

function goal (){
var ss = SpreadsheetApp.getActiveSheet();
var formattedDate = Utilities.formatDate(new Date(),"GMT+5", "dd.MM.YY..HH:mm");
var num1 = ss.getRange("B7").getValue();
var num2 = ss.getRange("C7").getValue();
var num3 = ss.getRange("D7").getValue();
ss.getRange("D7").setValue(num3+" / "+num1+" "+num2);
ss.getRange("B7").clear();
ss.getRange("C7").setValue(formattedDate);
var range = ss.getRange("B7");
ss.setActiveRange(range);
}

A7 - 客户名称

B7 - 活动任务

C7 - 创建任务的日期

D7 - 所有任务的历史

以下是问题:

现在脚本只能在一行范围内工作,我怎样才能使它在活动行范围内工作?

1 个答案:

答案 0 :(得分:1)

function goal (){
  var ss = SpreadsheetApp.getActiveSheet();
  var formattedDate = Utilities.formatDate(new Date(),"GMT+5", "dd.MM.YY..HH:mm");
  var row = ss.getActiveCell().getRow();
  var r = ss.getRange(row, 2, 1, 3);
  var rValues = r.getValues();
  r.setValues([["", formattedDate, rValues[0][2] +" / "+rValues[0][0]+" "+rValues[0][1]]]);
  ss.setActiveRange(ss.getRange(row, 2));
}