🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Google フォーム

Google フォームは、 Google社が提供しているアンケートフォーム作成および集計ができる無料のツール。Googleアカウントがあれば利用が可能です。集計データは、スプレッドシートに収集され、データ分析もできます。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

1回答

1685閲覧

自動返信メールの日付表記について

megmeg

総合スコア4

Google フォーム

Google フォームは、 Google社が提供しているアンケートフォーム作成および集計ができる無料のツール。Googleアカウントがあれば利用が可能です。集計データは、スプレッドシートに収集され、データ分析もできます。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2019/10/08 06:21

編集2019/10/11 00:40

前提・実現したいこと

自動メール返信時の日付表記が英語になっているのを、数字で表記されるように変更したいです。

発生している問題

他の方の質問をみて、書かれている内容を貼り付けて試してみましたが、 変化がなかったり、自動返信メールが届かなくなったりしています。 作ったスクリプトは参考ページのコピーで、全くの初心者なので知識がなく、 どこをどういじれば上手く機能するのかが分からない状況です。

該当のソースコード

html

1function auto_reply() { 2 //自動返信メールの件名 3 var title = "【お申し込みありがとうございます(自動返信)】"; 4 5 //自動返信メールの本文1(\nは改行) 6 var body 7 = "この度は、自分と繋がるカードリーディングへお申し込みいただきまして、誠にありがとうございます。\n" 8 + "お申し込みの内容は次の通りです。\n" 9 + "------------------------------------------------------------\n\n" 10 11 //自動返信メールの本文2(\nは改行) 12 var body2 13 = "------------------------------------------------------------\n\n" 14 + "内容を確認の上、あらためて返信させていただきます。\n"; 15 + "本メールに心当たりが無い場合は、その旨を記載の上ご返信下さいますようお願い申し上げます。\n\n"; 16 17 18 //本文作成用の変数 19 var sheet = SpreadsheetApp.getActiveSheet(); 20 var row = sheet.getLastRow(); 21 var column = sheet.getLastColumn(); 22 var range = sheet.getDataRange(); 23 24 25 26 //メールアドレス保存用の変数(最後のメール送信時に使用。) 27 var mail = ""; 28 29 for (var i = 1; i <= column; i++ ) { 30 //スプレッドシートの入力項目名を取得 31 var header = range.getCell(1, i).getValue(); 32 //スプレッドシートの入力値を取得 33 var value = range.getCell(row, i).getValue(); 34 35 //本文1(body)にスプレッドシートの入力項目を追加 36 body += "■"+header+"\n"; 37 38 //本文1(body)にフォームの入力内容を追加 39 body += value + "\n\n"; 40 41 //スプレッドシートの入力項目が「お名前」の場合は、「様」を付け本文の前に追加 42 if ( header === 'お名前' ) { 43 body = value+" 様\n\n"+body; 44 } 45 46 //フォームの入力項目が「メールアドレス」の場合は、変数mailに代入 47 if ( header === 'メールアドレス' ) { 48 mail = value; 49 } 50 } 51 //本文1に本文2を追加 52 body += body2; 53 54 //宛名=mail、件名=title、本文=bodyで、メールを送る 55 GmailApp.sendEmail(mail,title,body); 56} 57

試したこと

直そうとして参考にしたページ(似ている行の所に貼り付けてみたが上手く機能させられなかった)
https://teratail.com/questions/118521

補足情報(FW/ツールのバージョンなど)

グーグルフォームを使っており、上記サイトより自動返信機能を付けました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/10/08 06:39

現在のコード、設定などご提示ください
megmeg

2019/10/10 03:07

ご反応有り難うございます。コードというものがまず分からないのですが、以下をご覧いただく形で良いのでしょうか? function auto_reply() { //自動返信メールの件名 var title = "【お申し込みありがとうございます(自動返信)】"; //自動返信メールの本文1(\nは改行) var body = "この度は、自分と繋がるカードリーディングへお申し込みいただきまして、誠にありがとうございます。\n" + "お申し込みの内容は次の通りです。\n" + "------------------------------------------------------------\n\n" //自動返信メールの本文2(\nは改行) var body2 = "------------------------------------------------------------\n\n" + "内容を確認の上、あらためて返信させていただきます。\n"; + "本メールに心当たりが無い場合は、その旨を記載の上ご返信下さいますようお願い申し上げます。\n\n"; //本文作成用の変数 var sheet = SpreadsheetApp.getActiveSheet(); var row = sheet.getLastRow(); var column = sheet.getLastColumn(); var range = sheet.getDataRange(); //メールアドレス保存用の変数(最後のメール送信時に使用。) var mail = ""; for (var i = 1; i <= column; i++ ) { //スプレッドシートの入力項目名を取得 var header = range.getCell(1, i).getValue(); //スプレッドシートの入力値を取得 var value = range.getCell(row, i).getValue(); //本文1(body)にスプレッドシートの入力項目を追加 body += "■"+header+"\n"; //本文1(body)にフォームの入力内容を追加 body += value + "\n\n"; //スプレッドシートの入力項目が「お名前」の場合は、「様」を付け本文の前に追加 if ( header === 'お名前' ) { body = value+" 様\n\n"+body; } //フォームの入力項目が「メールアドレス」の場合は、変数mailに代入 if ( header === 'メールアドレス' ) { mail = value; } } //本文1に本文2を追加 body += body2; //宛名=mail、件名=title、本文=bodyで、メールを送る GmailApp.sendEmail(mail,title,body); } また、昨日の午後フォームにアクセスがあった様でしたが、グーグルからエラーメッセージが届きました。昨日の午前中、フォームの公開前にPCにて複数のメールアドレスから試してみると、自動返信は正常に機能していました。現在、再度確認したところ、PCからのアクセスでは変わらず正常でしたが、スマホからは、回答はなされたが自動返信が機能しない、という状況でした。昨日の午後にあったらしいアクセスの回答は得られていませんでした。以下にエラーメッセージと思われるメールの内容を記載致しますので、あわせてご覧いただけますと幸いです。 メール① スクリプト 自分と繋がるカードリーディングお申し込みフォーム を正常に完了できませんでした。失敗のまとめを下記に示します。このスクリプトのトリガーを設定したり、今後の失敗の通知の受信設定を変更したりするには、ここをクリックしてください。 概要: エラー メッセージ カウント ReferenceError: 「depDate」が定義されていません。(行 24、ファイル「コード」) 1 ReferenceError: 「depDate」が定義されていません。(行 26、ファイル「コード」) 2 ReferenceError: 「range」が定義されていません。(行 22、ファイル「コード」) 1 起動 関数 エラー メッセージ トリガー End 19/10/08 14:25 auto_reply ReferenceError: 「depDate」が定義されていません。(行 26、ファイル「コード」) formSubmit 19/10/08 14:25 19/10/08 14:26 auto_reply ReferenceError: 「depDate」が定義されていません。(行 26、ファイル「コード」) formSubmit 19/10/08 14:26 19/10/08 14:29 auto_reply ReferenceError: 「depDate」が定義されていません。(行 24、ファイル「コード」) formSubmit 19/10/08 14:29 19/10/08 14:36 auto_reply ReferenceError: 「range」が定義されていません。(行 22、ファイル「コード」) formSubmit 19/10/08 14:36 よろしくお願いいたします。 Google Apps Script サポートが必要な場合は、Google Apps Script のドキュメントをご覧ください。本メールは配信専用です。ご返信なさらぬようご注意ください。(c) 2019 Google メール② スクリプト お問い合わせフォーム を正常に完了できませんでした。失敗のまとめを下記に示します。このスクリプトのトリガーを設定したり、今後の失敗の通知の受信設定を変更したりするには、ここをクリックしてください。 概要: エラー メッセージ カウント TypeError: null のメソッド「getLastRow」を呼び出せません。(行 20、ファイル「コード」) 2 起動 関数 エラー メッセージ トリガー End 19/10/08 15:51 auto_reply TypeError: null のメソッド「getLastRow」を呼び出せません。(行 20、ファイル「コード」) formSubmit 19/10/08 15:51 19/10/08 16:07 auto_reply TypeError: null のメソッド「getLastRow」を呼び出せません。(行 20、ファイル「コード」) formSubmit 19/10/08 16:07 よろしくお願いいたします。 Google Apps Script サポートが必要な場合は、Google Apps Script のドキュメントをご覧ください。本メールは配信専用です。ご返信なさらぬようご注意ください。(c) 2019 Google そして、メール②で使っているスクリプトは、先述のものと同じで、文言を少し変えただけのものです。 長くなってしまい、追加もあり恐縮ですが、どうぞ宜しくお願い申しあげます。
macaron_xxx

2019/10/11 06:25

コードを見ても、どこに日付があるのかわからないので、データも含めてもっている情報は全て開示してください。
hiroshi0240

2019/10/11 09:08

「英語になっているのを、数字で表記されるよう」とのことですが、具体的にどのような表示をどのように変更したいのですか?実際の表示例と変更例をあげてください。
guest

回答1

0

自己解決

解決していませんが、問題対処の為に勉強しなければならないことが私には複雑すぎるので、グーグルフォームを使用することを諦めます。

多くのご親切な方々にご協力を賜り、心から感謝申し上げます。

機会と環境が整えばいつか再チャレンジしてみたいと思います。

ありがとうございました。

投稿2019/10/15 00:55

megmeg

総合スコア4

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問