まず、スプレッドシートを新規作成してから、スクリプトエディタを起動し、以下のスクリプトを記述します。
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [{name: "実行", functionName: "myFunction"}];
ss.addMenu("拡張", menuEntries);
}
function myFunction() {
var sh = SpreadsheetApp.getActiveSheet();
var mail_to = sh.getRange("A2").getValue();
var subject = sh.getRange("B2").getValue();
var body = sh.getRange("C2").getValue();
MailApp.sendEmail(mail_to, subject, body);
Browser.msgBox("メールを送信しました!");
}
このスクリプトを保存し、スクリプトエディタも閉じます。
更に、スプレッドシートも保存し、スプレッドシートの画面も閉じます。
一旦閉じたスプレッドシートを開くと「拡張」メニューが追加されます。
2行目に、宛先、件名、本文を入力し、「拡張」メニューから「実行」を選択します。
初めて実行した時は以下のメッセージが表示されます。
ここで「OK」を押して承認しないとスクリプトは実行されません。
ただし、承認した時はスクリプトが実行されていませんので「拡張」メニューから「実行」をもう一度選択してスクリプトを実行します。
このスクリプトのポイントは、以下の3点です。
・SpreadsheetApp.getActiveSheet()で現在アクティブなシートを取得
・シート.getRange("セルの位置").getValue()でセルの値を取得
・MailApp.sendEmail(mail_to, subject, body)でメール送信
【参考にしたサイト】
Google Code > Tutorial: Creating Your First Spreadsheet Script
http://code.google.com/intl/ja/googleapps/appsscript/articles/yourfirstscript.html
Google Code > Tutorial: Sending emails from a Spreadsheet
http://code.google.com/intl/ja/googleapps/appsscript/articles/sending_emails.html
0 件のコメント:
コメントを投稿