▼やりたいこと
スプレッドシートを新規作成すると同時に、別のスプレッドシートのシートをコピーされた状態にしたい
▼教えていただきたいこと
下記のコードで、スプレッドシート は新規作成されるものの、シートコピーがされません。
アドバイスいただければと思います。
function test001() { //【手順1】新規スプレッドシートをマイドライブに作成する const ss = SpreadsheetApp.create('テストファイル'); var ss_copyFrom = SpreadsheetApp.openById('************'); //コピー元のマスターデータのあるスプレッドシート var ss_copyTo = SpreadsheetApp.getActiveSpreadsheet(); var sheet_copyFrom = ss_copyFrom.getSheetByName('****'); //コピー元のスプレッドシートの値を抜き出したいシート名 var sheet_copyTo = ss_copyTo.getSheetByName('****'); //ペーストする自分のスプレッドシートのシート名 sheet_copyTo.clear();// コピー元の行や列が減っていることを考慮して、一旦コピペ先のシートをクリア var lastRow = ss_copyFrom.getLastRow(); //最終行を取得 var lastColumn = ss_copyFrom.getLastColumn(); //最終列を取得 var copyValue = sheet_copyFrom.getRange(1,1,lastRow,lastColumn).getValues(); //コピー元のシートから値の入っている全範囲をコピー sheet_copyTo.getRange(1,1,lastRow,lastColumn).setValues(copyValue); //自分のシートにコピーした値を全範囲をペースト /*addFile,removeFileメソッドのパラメータはFileオブジェクトを指定するため、 【手順1】で作成したスプレッドシートをFileオブジェクトとして取得する */ const file = DriveApp.getFileById(ss.getId()); const id = '*****************'; //フォルダID DriveApp.getFolderById(id).addFile(file); }
あなたの回答
tips
プレビュー