此代码涉及三个电子表格
unstructuredSheets
的源电子表格structuredSpreadsheet
。指令structuredSheet.activate
似乎没有任何作用。 structuredSpreadsheet
中的第一张纸仍处于活动状态。
任何想法为什么会这样?
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
答案 0 :(得分:1)
activate
仅适用于运行在用户通过Google表格用户界面打开的电子表格上的脚本,而不适用于通过代码打开的电子表格。