So, I have a Google Spreadsheet A that has a dropdown selection in column A. When a user selects a value from dropdown in column A, want the entire row copied to another sheet, let’s say Spreadsheet B.
Spreadsheet A looks like this:
And Spreadsheet B is empty:
After some help, I got the following code:
function onEdit(e) {
const editedRange = e.range;
if (editedRange.getColumn() == 1) {
const sheet = editedRange.getSheet();
const rowData = sheet.getRange(editedRange.getRow(), 1, 1, sheet.getLastColumn()).getValues()[0];
test(rowData);
}
}
function test(row){
var destinationSpreadsheetId = "XXXXXXXXXXXXXXXXXX";
var destSpreadsheet = SpreadsheetApp.openById(destinationSpreadsheetId);
var destSheet = destSpreadsheet.getSheetByName("Sheet1");
destSheet.appendRow(row);
}
But it doesn’t work for me I don’t know what I am doing wrong. But when I run the test function alone like this:
function test(){
var destinationSpreadsheetId = "XXXXXX";
var destSpreadsheet = SpreadsheetApp.openById(destinationSpreadsheetId);
var destSheet = destSpreadsheet.getSheetByName("Sheet1");
destSheet.appendRow(["adam","alan","amek"]);
}
It works perfectly.
How do I make this function run when a user selects a value from dropdown. Need help.