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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Google Apps Script

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

Q&A

解決済

1回答

786閲覧

GASを使ってHTMLを送信したい

sunglass

総合スコア303

Google Apps Script

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

0グッド

0クリップ

投稿2019/12/13 08:28

グーグルフォームに物件情報を記入してもらうとスプレッドシートに保存。
指定のアドレスにHTML形式で情報を送りたいです。

試しにAttractMail.htmlをGAS上に用意。
イメージ説明

下記のサンプルでグーグルフォームに入力するとメールは受信できます。(スプレッドシートにデータは保存されます。)

ただメールの内容がHTML形式ではなく、ただのテキストとして出力されます。
原因はどこにあるのかわかりません。

sample.gs

1function sendAttract(e){ 2 var items = e.response.getItemResponses(); 3 var html = ''; 4 5 for (var i = 0; i < items.length; i++) { 6 var item = items[i]; 7 8 var html = HtmlService.createHtmlOutputFromFile("AttractMail").getContent(); 9 10 GmailApp.sendEmail('sample@xxxxx.com', '出店の誘致に関する問い合わせ', html); 11 12 } 13} 14 15

html

1// AttractMail.html 2 3<!DOCTYPE html> 4<html> 5<head> 6 <base target="_top"> 7</head> 8<body> 9 <style> 10 11 .wrap{ 12 width:75%; 13 margin:auto; 14 padding:40px; 15 } 16 @media screen and (max-width: 480px){ 17.wrap{ 18 width:100%; 19 padding:40px 0; 20} 21} 22 23 h2{ 24 text-align: center; 25 } 26 @media screen and (max-width: 480px){ 27h2{ 28 font-size: 18px; 29} 30} 31 img{ 32 max-width: 100%; 33 text-align: center; 34 } 35 36 ul li{ 37 list-style: none; 38 margin-bottom:24px; 39 } 40 @media screen and (max-width: 480px){ 41ul { 42 padding-left:8px; 43} 44} 45 46 table{ 47 width: 100%; 48 padding-left:40px; 49} 50@media screen and (max-width: 480px){ 51table{ 52 padding-left:8px; 53} 54} 55 56table th{ 57 position: relative; 58 text-align: left; 59 width: 15%; 60} 61 62table th:after{ 63 display: block; 64 content: ""; 65 width: 30px; 66 height: 2px; 67 background-color: #333; 68 position: absolute; 69 top:calc(50% - 1px); 70 right:20px; 71} 72@media screen and (max-width: 480px){ 73 table th:after{ 74 background-color: inherit; 75 76} 77} 78 79table td{ 80 text-align: left; 81 width: 85%;} 82 83 table tr{ 84 height: 48px; 85} 86 87footer{ 88 background: #333; 89 padding:24px; 90 color: #fff; 91 text-align: center; 92} 93 </style> 94 <h1><img src="img/logo.jpg"></h1> 95 <h2>出店の誘致に関する問い合わせ</h2> 96 <div class="wrap"> 97 <ul> 98 <li>会社名:</li> 99 <li>担当者名:</li> 100 <li>連絡先(メール):</li> 101 <li>連絡先(TEL):</li> 102</ul> 103 104<table> 105 <tr> 106 <th>賃料</th> 107 <td>10.9万円</td> 108 </tr> 109 <tr> 110 <th>契約期間</th> 111 <td>短期(1ヶ月以内)</td> 112 </tr> 113 <tr> 114 <th>住所</th> 115 <td>東京都東区東10292</td> 116 </tr> 117 <tr> 118 <th>広さ</th> 119 <td>20平方メートル</td> 120 </tr> 121 <tr> 122 <th>アクセス</th> 123 <td>○○駅から徒歩1分</td> 124 </tr> 125</table> 126</div> 127 128<footer>Sample inc 2019</footer> 129 130</body> 131</html> 132

イメージ説明
受信したメールの本文(画像)

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

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

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

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

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

guest

回答1

0

ベストアンサー

https://tonari-it.com/gas-gmail-html-email/#toc3

こちらの記事が参考になると思います。

GmailApp.sendEmail('sample@xxxxx.com', '出店の誘致に関する問い合わせ', html);

だけではだめで、

https://developers.google.com/apps-script/reference/gmail/gmail-app#sendEmail(String,String,String,Object) の 関数を使って、

{ from: 'system@hoge.jp', //送り元 htmlBody: html }

に相当する部分が必要となります。

投稿2019/12/13 08:32

tetsunosuke

総合スコア1292

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問