

フォームで送られてきたものをスプレットシートに表示させ、その中のメールアドレスと名前を使用して、ドキュメントに作ったメッセージ本文を一括送信するという仕組みをつくりたいです。

送信しようとしましたら

> メッセージの詳細  
>  スクリプト関数 sendEmails が見つかりません。詳しくは <https://developers.google.com/apps-
> script/reference/base/menu#addItem(String,String)> をご覧ください。

とエラーが出てきてしまいました。

しかし、いろいろやってみたのですが、何が間違っているのかどうすればいいかわかりませんでした。

プログラム初心者でもわかるようにお願いできればうれしいです。

以下が記載したコードです。

[code]

    function myFunction() {
      Browser.msgBox("Hello " + Session.getEffectiveUser().getEmail());
    }
    
    function myFunction() {
      var SheetName = SpreadsheetApp.getActiveSheet();
      var SheetRow = SheetName.getDataRange().getLastRow();
    
      /* ドキュメント「メール本文テスト」を取得する */
      var docMail = DocumentApp.openById("1***********8"); //ドキュメントのID
      var strDoc = docMail.getBody().getText();
    
      /* シートの全ての行について姓名を差し込みログに表示*/
      for (var i = 2; i <= SheetRow; i++) {
        var strToAd = SheetName.getRange(i, 2).getValue();
        var strName = SheetName.getRange(i, 3).getValue();
        var strBody = strDoc.replace(/{お名前}/g, strName);
    
        /* メール表題、fromアドレス、差出人名を準備 */
        var strSubj = "************"; //タイトル
        var strFrom = "************"; //Fromのアドレス
        var strSend = "**************"; //差出人の名前
    
        /* メールを送信 */
        GmailApp.sendEmail(strToAd, strSubj, strBody, {
          from: strFrom,
          name: strSend
        });
      }
    }
    
[/code]


CC BY-SA 4.0
2019-04-27T10:17:45.170
54522
2020-08-17T22:02:40.237
2019-04-27T16:42:45.530
29826
34097
question
javascript google-apps-script
Google Apps Scriptでスクリプト関数 sendEmails が見つかりませんというエラー


『スクリプト関数 sendEmails が見つかりません』というエラーメッセージが出たのは、  
コメント欄に書かれたコード

[code]

    GmailApp.sendEmail(strToAd, strSubj, strBody, { from: strFrom, name: strSend }); 
    
[/code]

のように "sendEmail"関数を使うべきところをミスタイプして、"sendEmails"と書いてしまったからではないですか？

Google App Scriptに"sendEmail"関数はありますが、"sendEmails"関数はありませんから、『スクリプト関数
sendEmails が見つかりません』というエラーメッセージが出たという当たり前の話のような気がします。

＝＝＝  
＜何が間違っているのか＞  
"sendEmail"と書くところを、"sendEmails"と書いてしまった（最後に余分な s が入ってしまった）

＜どうすればよいのか＞  
・問題をおこしたのプログラムの中で、"sendEmails"という文字列を探す。  
・それが"sendEmail"を使うべきところであれば、修正(余分な最後の文字 's'を削除）する。


CC BY-SA 4.0
2019-04-28T05:25:12.343
54536
2019-04-28T05:25:12.343
217
54522
answer


具体的に記載くださいまして本当にありがとうございます！  
sendEmailが使われているのは、

[code]

    GmailApp.sendEmail(strToAd, strSubj, strBody, { from: strFrom, name: strSend });
    
[/code]

のところのみみたいです。自分の目でチェックしたのとDreamWeaverで検索もしてみたのですが見当たらなかったです。

もしかしてソース的に足りない記載があるのでしょうか？  
いろんな記事からもってきて入れ替えて試してもみたのですが、だいたいこのエラーが出ます。

>
[code]

>     詳しくは https://developers.google.com/apps-
> script/reference/base/menu#addItem(String,String)
>  
[/code]

>
> をご覧ください。

ともあったので、Google翻訳なので理解はできてないとおもうのですが、(String,String)の記載あるところがあったのでみると、大文字とか小文字の問題なのかとおもいみてみたのですが、コードの記載のルールがいまいちわからないので、ほかの部分と統一してさがしてみたりもしたのですが、見つけられませんでした。

もしくはほかの設定、スプレットシートやドキュメントのほうでもなにかスクリプトエディタで記載しないといけないとかありますでしょうか？自分が行き当たった記事にはそっちの設定のスクリプトエディタについては書いてなかったので、現在探しています。

もしなにかお分かりになることがございましたら何卒よろしくお願いいたします。


CC BY-SA 4.0
2019-04-28T06:35:08.810
54539
2019-04-28T06:35:08.810
34097
54522
answer