一つの Google spread sheet を複数のシートに分割するには?
function splitSheetIntoRows(sourceSheetName, numRowsPerSheet) { var sourceSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sourceSheetName); if (!sourceSheet) { throw new Error("指定されたシートが見つかりませんでした。"); } var lastRow = sourceSheet.getLastRow(); var sourceData = sourceSheet.getRange(1, 1, lastRow, sourceSheet.getLastColumn()).getValues(); for (var i = 0; i < lastRow; i += numRowsPerSheet) { var numRows = Math.min(numRowsPerSheet, lastRow - i); // sheet 名の設定 var newSheetName = sourceSheetName + "_" + (i + 1) + "-" + (i + numRows); var newSheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet(newSheetName); newSheet.getRange(1, 1, numRows, sourceSheet.getLastColumn()).setValues(sourceData.slice(i, i + numRows)); } } function main() { var sourceSheetName = "ALL"; // 分割元のシート名をここに指定 var numRowsPerSheet = 25; // 分割する行数をここに指定 splitSheetIntoRows(sourceSheetName, numRowsPerSheet); }