Click here to Skip to main content
15,887,485 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Im trying to copy record from "Setup" sheet to another sheet named "Active" based on selection from the dropdown in column F which has Active & Pending list
Active Status would only copy data from "Setup" sheet to "Active" sheet however will not delete data from Setup Sheet, it will stay as it is.

Below peice of code (copied from elsewhere) is giving me an error can someone help improvising this for me.

Error: Syntax error: SyntaxError: Unexpected token '{' line: 7 file: Code.gs

function onEdit(event) {

var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = event.source.getActiveSheet();
var r = event.source.getActiveRange();

If(s.getName() == "Main" && r.getColumn() == 7 && r.getValue() == "Completed") {
var row = r.getRow();
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("Completed")
var target = targetSheet.getRange(targetSheet.getLastRow() +1, 1);
s.getRange(row, 1, 1 numColumns).moveTo(target);
s.deleteRow(row);
}
}

What I have tried:

If(s.getName() == "Main" && r.getColumn() == 7 && r.getValue() == "Completed") {
   	var row = r.getRow();
	var numColumns = s.getLastColumn();
	var targetSheet = ss.getSheetByName("Completed")
	var target = targetSheet.getRange(targetSheet.getLastRow() +1, 1);
	s.getRange(row, 1, 1 numColumns).moveTo(target);
	s.deleteRow(row);
	}
}
Posted
Updated 6-Jun-23 21:36pm
Comments
Mohammad Haneef Ahmad 31-May-23 13:08pm    
This is by the way in Google Sheets

1 solution

You are missing a semicolon:
JavaScript
var numColumns = s.getLastColumn();
var targetSheet = ss.getSheetByName("Completed")
                                                ^
                                                |
var target = targetSheet.getRange(targetSheet.getLastRow() +1, 1);
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900