質問: sheet_copyFrom.getRange('A1:FY1000').getValues(); sheet_copyTo.getRange('A1:FY1000').setValues(copyValue); } ``` ### 補足情報(FW/ツールのバージョンなど) Google Chrome 最新版 DriveAPIはON、またフォルダも共有化しているのでコードの問題かと考えております。 また新しいスプレッドシートは指定のフォルダに作られています。 コピー元のスプレッドシートとは別のフォルダになります。 お手数ですがよろしくお願いします
回答: スクリプトの主な問題は`Drive.Files.insert()`で作成したスプレッドシートは使用されていないことと思われます。ゴールは「シートの内容を新しいスプレッドシートを作成しそちらへコピー」とのことですので、これに合わせてスクリプトを修正してみます。 ### 修正したスクリプト ``` function createSheet() { var sheet = Drive.Files.insert({ "title": new Date(), "mimeType": "application/vnd.google-apps.spreadsheet", "parents": [{"id":"ファイルid"}]}); var ss_copyFrom = SpreadsheetApp.getActiveSpreadsheet(); var ss_copyTo = SpreadsheetApp.openById(sheet.id); // 修正 var sheet_copyFrom = ss_copyFrom.getSheetByName('コピー元シート'); // 修正 var sheet_copyTo = ss_copyTo.getSheetByName('シート1'); var copyValue = sheet_copyFrom.getRange('A1:FY1000').getValues(); sheet_copyTo.getRange('A1:FY1000').setValues(copyValue); } ``` ### 参考 * openById(id) * getSheetByName(name)