実現したいこと
テンプレートをコピーし指定したドライブへ格納する際に
テンプレートには複数のシートがあるため、指定したシートのみでコピーを実行したいです。
※詳細※
テンプレートには8枚のシートがあります。
左から4・5・6枚目の3シートのみをコピーしドライブへ格納したいですが
その方法が分からず困っています。
現状は全シートのコピーはできていますので、下記のコードを修正する形でご教授いただけますと幸いです。
該当のソースコード
GAS
1function copy() { 2 // テンプレート 3 var templateFile = DriveApp.getFileById('●●●●●'); 4 5 // 格納ドライブ 6 var OutputFolder = DriveApp.getFolderById('●●●●●'); 7 8 var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 9 var sheet = spreadsheet.getSheetByName("sheet1");//シート指定 10 11 //各情報の取得 12 var startdate = sheet.getRange("A1").getValue(); 13 var kinds = sheet.getRange("A2").getValue(); 14 var CompanyName = sheet.getRange("A5").getValue(); 15 var productname = sheet.getRange("A7").getValue(); 16 17 //格納する際のファイル名を指定 18 var fileName = `${startdate}_${kinds}_${CompanyName}_${productname}`; 19 20 //コピーし格納 21 var newFile = templateFile.makeCopy(fileName,OutputFolder); 22 23 //ファイル名・URLの書き出し 24 var sheet1 = spreadsheet.getSheetByName("sheet2");//シート指定 25 26 var Folder = DriveApp.getFolderById("●●●●●"); 27 var files = Folder.getFiles(); 28 var row = 2; 29 while(files.hasNext()){ 30 var file = files.next() 31 sheet1.getRange(row,1).setValue(file.getName()); 32 sheet1.getRange(row,2).setValue(file.getUrl()); 33 row++; 34 }; 35}
回答1件
あなたの回答
tips
プレビュー