前提・実現したいこと
スクリプト初心者です。
Google Driveのファイルを添付して、一斉送信を行いたく
コードを作成してみたのですが、
以下のエラーメッセージが発生しました。
■スプレッドシートからの社名・宛名・メールアドレス・本文等の差し込み
■Google Driveの指定ファイル添付して送付すること
お分かりの方、お力をお貸しいただけませんでしょうか。
発生している問題・エラーメッセージ
TypeError: オブジェクト Drive で関数 getstrfolderById が見つかりません。
該当のソースコード
function myFunction() { /* スプレッドシートのシートを取得と準備 */ var mySheet=SpreadsheetApp.getActiveSheet(); //シートを取得 var rowSheet=mySheet.getDataRange().getLastRow(); //シートの使用範囲のうち最終行を取得 /* ドキュメント「メール本文テスト」を取得する */ var docTest=DocumentApp.openById("1eMJg_2TyuY9Mtenw8YUpFC8hzULOTfaPjzgnsOn1LYc"); //ドキュメントをIDで取得 var strDoc=docTest.getBody().getText(); //ドキュメントの内容を取得 /* シートの全ての行について姓名を差し込みログに表示*/ for(var i=2;i<=rowSheet;i++){ var strEmail=mySheet.getRange(i,1).getValue(); //email var strSei=mySheet.getRange(i,2).getValue(); //姓 var strMei=mySheet.getRange(i,3).getValue(); //名 var strNo=mySheet.getRange(i,4).getValue(); //番号 var strBody=strDoc.replace(/{姓}/g,strSei).replace(/{名}/g,strMei).replace(/{番号}/g,strNo); /* メール表題、fromアドレス、差出人名を準備 */ var strSubject = strSei + strMei+"様 テスト:おしらせ"; //姓 名 様 メールタイトル var strFrom="aaa@bbbb.jp"; //From var strSender="TEST ○○社"; //差出人 //Google Driveからファイル名で、ファイルを取得する var strfolder = DriveApp.getstrfolderById('aaaaa'); //フォルダIDを入力 var strreport =folder.DriveApp.getfileByName('test.pdf').next(); //file単体になっている点に注意 /* メールを送信 */ GmailApp.sendEmail( strEmail, //toアドレス strSubject, //メールタイトル strBody, //本文 { attachments: strreport, from: strFrom, //fromアドレス name: strSender //差出人 } ); } }
試したこと
folderを指定せずにファイルを直接取得も試したのですが
定義されていません、というようなエラーが出てしまいました
また、添付ファイル無しでの送信はできました
補足情報(FW/ツールのバージョンなど)
参考にしたサイト
参考1:https://liapoc.com/bulk-transmission.html
参考2:https://tonari-it.com/gas-google-drive-file-folder-id/
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/24 08:40