2017-02-25 14 views
0

これは私の最初の試みは、あらゆる種類のスクリプトを書いて、また質問を投稿することです。Googleのスクリプトの列の変更の電子メールの通知

私はGoogleシートを作成しました。このスプレッドシートに行が追加されるたびに電子メール通知を送信したいと思います(または、新しいセルが列Aに入力されるたびに簡単に保つ)。

私はこれらのフォーラムを数時間探していて、次のスクリプトをまとめて、 "onedit" & "onchange"をGoogleスクリプトで起動しますが、何も動作しませんでした。

以下のリンクは役に立ちましたが、依然として私が望む結果を得ることができませんでした。関連する編集時に通知が自動的にトリガされることはありません。このラインで

how to attach onChange cell value event/script to google sheet

email notification if cell is changed

//Open function 

function sendNotification() { 

//Get spreadsheet & sheet 

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var sheet = ss.getActiveSheet(); 

//Define notification details 

var recipients = "[email protected]"; 
var subject = "New lead"; 

var body = 'A new lead has been added to Simba. For message: ' + message + ''; 

//Specify several sheet variables 

var cell = ss.getActiveCell().getA1Notation(); 
var row = sheet.getActiveRange().getRow(); 
var cellvalue = ss.getActiveCell().getValue().toString(); 
var message = ''; 

//Specify if statement 

    if(cell.indexOf('A')!=-1){ 
    message = sheet.getRange('B'+ sheet.getActiveCell().getRowIndex()).getValue() 
    } 

//Send the Email 

MailApp.sendEmail(recipients, subject, body); 

//Close function 

}; 

答えて

0
var body = 'A new lead has been added to Simba. For message: ' + message + ''; 

、 "メッセージ" は未定義です。エラーが発生します。このエラーにより、メールを送信できません。 "message"の定義はこの行の下にあるためです。この行を以下に変更してください

message = sheet.getRange('B'+ sheet.getActiveCell().getRowIndex()).getValue() 

この機能のトリガーをインストールしてください。トリガーをインストールする方法は、参照URLに表示されます。

関連する問題