I have a table which cells have functions/formulas, like this one:
I need a script that create a new row copying to it the functions/formulas of the last used row. I find this script which create a new row but it doesn't copy functions/formulas. How could I implement this formatting copy task in Google Script without having to manually select and copy?
Thanks for any help!
I have a table which cells have functions/formulas, like this one:
I need a script that create a new row copying to it the functions/formulas of the last used row. I find this script which create a new row but it doesn't copy functions/formulas. How could I implement this formatting copy task in Google Script without having to manually select and copy?
Thanks for any help!
Share Improve this question edited May 23, 2017 at 12:31 CommunityBot 11 silver badge asked Jul 26, 2013 at 21:32 craftApprenticecraftApprentice 2,77721 gold badges61 silver badges87 bronze badges2 Answers
Reset to default 3You can copy formulas just as easily you copy values, just use Range.getFormula()
and Range.setFormula()
instead of .getValue()
and .setValue()
. See documentation on spreadsheet service.
Inserting a row below the last one is pretty basic, use insertRowAfter and getLastRow in a simple script.
EDIT : in case you don't find it, here is an example of another simple way to do it, copying everything in one step
function duplicateLastRow(){
var ss = SpreadsheetApp.getActiveSheet();
ss.insertRowAfter(ss.getLastRow());
ss.getRange(ss.getLastRow(),1,1,ss.getLastColumn()).copyTo(ss.getRange(ss.getLastRow()+1,1));
}
Method Sheet.appendRow allow append row in one mand as atomic action.