基本的には自分用の備忘録です。
ちらっと見かけて、役にたちそうな方は使ってやってください。
いきなりスクリプトを書いてしまいますが、とりあえず以下のスクリプトを書く必要があります。
説明は順番に。
function sendacceptMail() {
const recipient = 'XXXXXXXX@XXYYZZ.com'; //送信先のメールアドレス
const subject = 'メールの件名です。'; //件名
const recipientCompany = 'メールの宛先です。'; //送信先の会社名
const recipientName = 'メール送信先の担当者名です。'; //送信先の担当者名
var body = `${recipientCompany}\n${recipientName}宛\n`
var ss = SpreadsheetApp.getActiveSpreadsheet();
const value = ss.getRange("A2").getValue(); //セルの所在地
body += value;
body += '\nメール本文です。\n';
const url = ss.getUrl();
body += url; //本文
const options = { name: '送信者名です。(スプレッドシートの名前がいいと思います。)' }; //送信元の名称
var popUp = Browser.msgBox("送信確認", "送信しますか?", Browser.Buttons.OK_CANCEL);
if (popUp == 'ok') {
GmailApp.sendEmail(recipient, subject, body, options);
Browser.msgBox("送信しました");
} else {
Browser.msgBox("キャンセルしました");
}
}
スプレッドシートを開きApps Scriptを立ち上げる
メール送信ボタンを設置したいスプレッドシートを開き、Apps Scriptを立ち上げます。
Scriptを書き込む
上記functionをまるっとコピーして貼り付けます。
貼り付けたコードの2行目以下、必要箇所を修正します。
Script名をつける
メール送信なので「send mail」とか?
Scriptに名前を付けたら、デプロイしてしまいます。
種類はウェブアプリで、実行ユーザー・アクセスできるユーザーは適当に選んでください。
一応僕は自分のみにしてます。
デプロイボタンを押すと、アカウントの承認が進み、安全でないアプリケーションへのアクセス許可を求められます。
安全ではないアプリケーションへのアクセスを「許可する」としてそのまま進行し、デプロイを完了します。
スプレッドシートにボタンを設置する
角丸の四角とかがボタンぽくてよいです。
配置したボタンにスクリプトを割り当てる
ボタン右上の3点ポチをクリックすると「スクリプトを割り当て」のメニューが表示されるので、選択。
割り当てるスクリプトを直接書き込むのですが、コードの1行目、function の横に書いた名前をコピペします。
動作確認してみる
ボタンを押してスクリプトが動作するか確認します。
メールが指定のアドレスに届けば完了。
非常に乱暴にざっくりとしたメモを残しましたが、僕は再びこのコードを書くことがあるのだろうか?
自分で書くとしたら、何行目がどんな意味だったか覚えてないんだろうなぁ…