Skip to content

Instantly share code, notes, and snippets.

@mbierman
Last active July 3, 2019 17:36
Show Gist options
  • Select an option

  • Save mbierman/dc57f3f1ec9f1c5db32d5574a2a4ff01 to your computer and use it in GitHub Desktop.

Select an option

Save mbierman/dc57f3f1ec9f1c5db32d5574a2a4ff01 to your computer and use it in GitHub Desktop.
Google AppScript to automatically copy formulas to the last row of columns D:I of a Google Spreadsheet if an edit is made on a particular sheet
function onEdit(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sName = ss.getSheetName();
var target = 'Data'
Logger.log('Starting script...');
if (sName == target){
Logger.log('The sheet name: "' + target +'" was edited.');
var destSheet = ss.getSheetByName(target);
var lastRow = destSheet.getLastRow();
var source = ss.getRange(target+"!D7:H7");
var destination = destSheet.getRange("D"+lastRow);
destination.activate();
source.copyTo(destination, SpreadsheetApp.CopyPasteType.PASTE_FORMULA)
Logger.log(' Update 1 - "D:' + lastRow + ':H' + lastRow + '" was edited.');
var source = ss.getRange(target+"!J7");
var destination = destSheet.getRange("J"+lastRow);
destination.activate();
source.copyTo(destination, SpreadsheetApp.CopyPasteType.PASTE_FORMULA)
var destination = destSheet.getRange("I"+lastRow);
destination.activate();
Logger.log(' Update 2 - "J:' + lastRow + '" was edited.');
} else
Logger.log('Nothing done because sheet name is: "' + sName + '"');
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment