Reputation: 331
This code involves three spreadsheets
unstructuredSheets
structuredSpreadsheet
.The instruction structuredSheet.activate
doesn't seem to do anything. The first sheet in the structuredSpreadsheet
remains active.
Any ideas why that would be?
function importUnstructuredSpreadsheet2(unstructuredId,structuredId){
//this function uses copy/paste
var ssUnstructured=SpreadsheetApp.openById(unstructuredId);
var numUnstructuredSheets= ssUnstructured.getSheets().length;
var ssStructured=SpreadsheetApp.openById(structuredId );
var numStructuredSheets= ssStructured.getSheets().length;
for (var n = 0; n < numUnstructuredSheets ; n++ ) {
var unstructuredSheets=ssUnstructured.getSheets();
var unstructuredSheet= unstructuredSheets[n];
var structuredSheets= ssStructured.getSheets();
sheetName=unstructuredSheet.getSheetName();
var usedRange = unstructuredSheet.getDataRange();
var structuredSheet=ssStructured.getSheetByName(sheetName);
structuredSheet.activate();
structuredSheet.getRange('A1').activate();// may want to do at starting cell
unstructuredSheet.usedRange.copyTo(structuredSheets.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_NO_BORDERS, false);
}//each sheet
Upvotes: 0
Views: 46
Reputation: 38296
activate
only works on scripts that ran over spreadsheets that are opened by a user by using the Google Sheets UI not by spreadsheets opened by code.
Upvotes: 1