( " .." ) . , , , , .
, , , , .
function insertSheet( sheetName, sheetIndex, rows, columns, template ) {
var ss = SpreadsheetApp.getActive();
var numSheets = ss.getSheets().length;
sheetIndex = sheetIndex || (numSheets + 1);
sheetName = sheetName || "Sheet " + sheetIndex;
var options = template ? { 'template' : ss.getSheetByName(template) } : {};
var newSheet = ss.insertSheet(sheetName, sheetIndex, options);
if (rows !== 0) {
var newSheetRows = newSheet.getMaxRows();
if (rows < newSheetRows) {
newSheet.deleteRows(rows+1, newSheetRows-rows);
}
else if (rows > newSheetRows) {
newSheet.insertRowsAfter(newSheetRows, rows-newSheetRows);
}
}
if (columns !== 0) {
var newSheetColumns = newSheet.getMaxColumns();
if (columns < newSheetColumns) {
newSheet.deleteColumns(rows+1, newSheetColumns-columns);
}
else if (columns > newSheetColumns) {
newSheet.insertColumnsAfter(newSheetColumns,columns-newSheetColumns);
}
}
return newSheet;
}
; . , , , .
:
insertSheet();
script 200 ( Spreadsheet.insertSheet()):
[15-11-18 15:56:25:365 EST] Starting execution
[15-11-18 15:56:25:369 EST] SpreadsheetApp.getActive() [0 seconds]
[15-11-18 15:56:25:390 EST] Spreadsheet.getSheets() [0.02 seconds]
[15-11-18 15:56:25:544 EST] Spreadsheet.insertSheet([Sheet 2, 2, {}]) [0.153 seconds]
[15-11-18 15:56:25:565 EST] Sheet.getMaxRows() [0.02 seconds]
[15-11-18 15:56:25:565 EST] Sheet.getMaxColumns() [0 seconds]
[15-11-18 15:56:25:597 EST] Execution succeeded [0.196 seconds total runtime]
10 10 (, ):
insertSheet("New sheet",1, 10, 10);
325 :
[15-11-18 15:59:54:476 EST] Starting execution
[15-11-18 15:59:54:481 EST] SpreadsheetApp.getActive() [0 seconds]
[15-11-18 15:59:54:520 EST] Spreadsheet.getSheets() [0.038 seconds]
[15-11-18 15:59:54:595 EST] Spreadsheet.insertSheet([New sheet, 1, {}]) [0.075 seconds]
[15-11-18 15:59:54:629 EST] Sheet.getMaxRows() [0.033 seconds]
[15-11-18 15:59:54:699 EST] Sheet.deleteRows([11, 990]) [0.069 seconds]
[15-11-18 15:59:54:746 EST] Sheet.getMaxColumns() [0.046 seconds]
[15-11-18 15:59:54:809 EST] Sheet.deleteColumns([11, 16]) [0.062 seconds]
[15-11-18 15:59:54:810 EST] Execution succeeded [0.329 seconds total runtime]
, , 2000 52 ( ):
insertSheet("Big Sheet",1, 2000, 52);
240 :
[15-11-18 16:09:36:393 EST] Starting execution
[15-11-18 16:09:36:398 EST] SpreadsheetApp.getActive() [0 seconds]
[15-11-18 16:09:36:419 EST] Spreadsheet.getSheets() [0.02 seconds]
[15-11-18 16:09:36:491 EST] Spreadsheet.insertSheet([Big Sheet, 1, {}]) [0.071 seconds]
[15-11-18 16:09:36:518 EST] Sheet.getMaxRows() [0.027 seconds]
[15-11-18 16:09:36:563 EST] Sheet.insertRowsAfter([1000, 1000]) [0.044 seconds]
[15-11-18 16:09:36:585 EST] Sheet.getMaxColumns() [0.021 seconds]
[15-11-18 16:09:36:645 EST] Sheet.insertColumnsAfter([26, 26]) [0.059 seconds]
[15-11-18 16:09:36:646 EST] Execution succeeded [0.247 seconds total runtime]