質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
87.20%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google Apps Script

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

解決済

GAS メール作成時の日付表記について

abfk041512
abfk041512

総合スコア1

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google Apps Script

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

1回答

0評価

0クリップ

288閲覧

投稿2022/03/17 18:16

GASのメール送信で日付の表記を直したいです。

シート1にメールのテンプレート文章を作成しており、
シート2に必要事項を入力しメール送信ボタンを押すと
シート2の情報がシート1のメール文章に反映されメールを送信できるのですが

メール本文差し込みセルの$4と$5の日付の表記が
Thu Mar 03 2022 00:00:00 GMT+0900 (Japan Standard Time←メール上でこのような形になってしまいました。
下記差し込みコードの$4と$5をメール上で2022/03/18←このように表示させたいです。

getDisplayValuesを使うとは思うのですが、まだまだ勉強中なため
どのような形で入力したら反映されるか教えてもらいたいです。。。。

下記、現在入力しているコードです。

どなたかお助けいただけるととても助かります。

何卒よろしくお願いいたします。

function pushSendButton() {
/* スプレッドシートのシートを取得と準備 */
var ss = SpreadsheetApp.getActiveSpreadsheet(); //このスプレッドシート
var mainSheet = ss.getSheetByName("main"); //メインシート
var skSheet = ss.getSheetByName("sashikomi"); //差込シート
var skEndRow = skSheet.getDataRange().getLastRow(); //シートの使用範囲のうち最終行を取得
var count = skEndRow - 1;

// 送信確認 var select = Browser.msgBox("メールを一括送信します!", count + "件のメールを送信しますが、よろしいですか?", Browser.Buttons.OK_CANCEL); if (select == 'ok') { sendEmail(); } if (select == 'cancel') { Browser.msgBox("送信をキャンセルしました"); }

}

function sendEmail() {
/* スプレッドシートのシートを取得と準備 */
var ss = SpreadsheetApp.getActiveSpreadsheet(); // このファイル
var mainSheet = ss.getSheetByName("main"); // メインシート
var skSheet = ss.getSheetByName("sashikomi"); // 差込シート
var skEndRow = skSheet.getDataRange().getLastRow(); // シートの使用範囲のうち最終行を取得
var attachedFileId = mainSheet.getRange(7, 2).getValue(); // 添付ファイルのID

/* メール基本データの設定 */ var strFrom = mainSheet.getRange(3, 2).getValue(); // fromメールアドレス var strSender = mainSheet.getRange(4, 2).getValue(); // 差出人の名前 var strSubject = mainSheet.getRange(5, 2).getValue(); // メールタイトル var strBody = mainSheet.getRange(6, 2).getValue(); // 本文 if (attachedFileId) { var attachedFile = DriveApp.getFileById(attachedFileId); // 添付ファイル } var strSubjectIns = ""; // 差込後のメールタイトル var strBodyIns = ""; // 差込後のメール本文 for (var i = 2; i <= skEndRow; i++) { // 差込シートの取得 var strToEmail = skSheet.getRange(i, 8).getValue(); // 送信先メール var strCc = skSheet.getRange(i, 9).getValue(); // CC var strBcc = skSheet.getRange(i, 10).getValue(); // BCC var sk1 = skSheet.getRange(i, 11).getValue(); // 差込① var sk2 = skSheet.getRange(i, 12).getValue(); // 差込② var sk3 = skSheet.getRange(i, 13).getValue(); // 差込③ var sk4 = skSheet.getRange(i, 14).getValue(); // 差込④ var sk5 = skSheet.getRange(i, 15).getValue(); // 差込⑤ // 差込を反映 strSubjectIns = strSubject.replace(/\$1/g, sk1).replace(/\$2/g, sk2).replace(/\$3/g, sk3).replace(/\$4/g, sk4).replace(/\$5/g, sk5); //タイトル strBodyIns = strBody.replace(/\$1/g, sk1).replace(/\$2/g, sk2).replace(/\$3/g, sk3).replace(/\$4/g, sk4).replace(/\$5/g, sk5); //本文 /* メール送信 */ if (attachedFileId) { // 添付ファイル有りの場合 GmailApp.sendEmail( strToEmail, //toアドレス strSubjectIns, //メールタイトル strBodyIns, //本文 { cc: strCc, //ccアドレス bcc: strBcc, //bccアドレス from: strFrom, //fromアドレス name: strSender, //差出人 attachments: attachedFile //添付ファイル } ); } else { // 添付ファイル無しの場合 GmailApp.sendEmail( strToEmail, //toアドレス strSubjectIns, //メールタイトル strBodyIns, //本文 { cc: strCc, //ccアドレス bcc: strBcc, //bccアドレス from: strFrom, //fromアドレス name: strSender, //差出人 } ); } } Browser.msgBox("送信が完了しました。");

}

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Google Apps Script

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