行いたい事
google formから取得したデータを元に、見積書を作成しPDF化、PDFをメールに添付し下書き状態で保存するプログラムをGASで作成したい。
解決したいこと
ベースのスプレッドシートからコピーして新しく作った見積書を開きたいが、開けない。
見積書を開いた後にdatabaseのデータを見積書に反映させたい。
発生している問題・エラー
Exception: Service Spreadsheets failed while accessing document with id ~~
該当するソースコード
javascript
1const mailaddress = "hoge@gmail.com" 2 3function CreateQuotationSheet() { 4 const sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); 5 const lastRow = sh.getLastRow(); 6 7 const container = sh.getRange(lastRow, 14).getValue(); 8 const option = sh.getRange(lastRow, 15).getValue(); 9 const company = sh.getRange(lastRow, 16).getValue(); 10 const name = sh.getRange(lastRow, 17).getValue(); 11 const mail = sh.getRange(lastRow, 18).getValue(); 12 const phoneNumber = sh.getRange(lastRow, 19).getValue(); 13 const nmncapacity = sh.getRange(lastRow, 2).getValue(); 14 const nmnlots = sh.getRange(lastRow, 3).getValue(); 15 const nmncapacity2 = sh.getRange(lastRow, 4).getValue(); 16 const nmnlots2 = sh.getRange(lastRow, 5).getValue(); 17 // ここまででシートの内容は全て読み取れている 18 19 // 取得したデータを埋め込む見積書シートを開く 20 const templateID = "見積書のベースになるスプレッドシートのID"; 21 const templateSS = DriveApp.getFileById(templateID); 22 // 保存するフォルダを指定 23 const folderID = "見積書を保存するフォルダのID"; 24 const folder = DriveApp.getFolderById(folderID) 25 // テンプレートシートを元に111という新規ファイルを作り指定フォルダに保存する 26 const newFile = templateSS.makeCopy(111, folder); 27 const newID = newFile.getId(); 28 Logger.log(newID) 29 const saveSS = SpreadsheetApp.openById(newID); 30 const saveSheet = saveSS.getSheetByName('document'); 31} 32 33// 見積書をPDF化 34// PDFファイルをフォルダに保存 35// 新規GMAILを作成 36 // PDFファイルをメールに添付 37 // 下書き保存状態でアラートが飛ぶようにする
実施した事
https://mythicalreports.com/exception-service-spreadsheets-failed-while-accessing-document/
↓上記記事より↓
アップロードプロセス中に、シートの一時的なコピーを作成しています。コピープロセス中にスプレッドシートのセル制限が5,000,000に達すると、このエラーメッセージが表示されます。5Mセル制限はGoogleによって課されます。
残念ながら、この問題に対する適切な解決策はありません。特に空の列を削除することにより、シートを小さくする必要があります。
→不要な行や列を削除し、なるべくシートを小さくした。まだ関数などは設定しておらずシート容量は51KBであった。
同じエラーに遭遇し、解決した方がいらっしゃいましたら解決出来た方法をご教示頂けませんでしょうか。
上記サイトを見ていると、解決方法が無さそうな感じがして悩んでおります・・・・
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。