0
当“1”的值添加到第3列时,我正在将sheet1上的一行的值复制到sheet2。而不是复制每个单元格的值,我宁愿引用单元1上的单元格,以便在更新单元1上的数据时更新单元2。目前,我有:在Google表格中获取参考
function hotList(event) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();
if(s.getName() == "sheet1" && r.getColumn() == 3 && r.getValue() == "1") {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("sheet2");
var target = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
s.getRange(row, 1, 1, numColumns).copyTo(target);
}
我希望有一个公正的一个简单的替代CopyTo从我这里插上,但任何想法表示赞赏。
您是否希望Sheet2中的单元格具有类似'= Sheet1!B3'的内容?如果是这样,使用setFormula来做到这一点。 – 2016-07-14 17:48:50
谢谢,@bookend - 帮助我到达那里。 (s.getName()==“sheet1”&& r.getColumn()== 4 && r.getValue()==“1”){ var row = r.getRow(); var numColumns = s.getLastColumn(); var targetSheet = ss.getSheetByName(“Hot List”); var lastRow = targetSheet.getLastRow(); lastRow = lastRow + 1;对于(i = 0; i <= numColumns; i ++){ var cellCol = String.fromCharCode(97 + i); var formula =“= sheet1!”+ cellCol + row; var target = targetSheet.getRange(lastRow,1 + i); target.setFormula(formula); target.setFormula(formula); } } – jezra
如果您已经找到了解决方案,请将其作为答案发布。 –