2016-11-04 9 views
0

私はブランドの新しいコーダだ、と私は私のコードは、このプロセスで仕事をしたい:不正な値、定数エラー

私はそのスプレッドシートが中に特定の値を確認したいスプレッドシート につながるフォームに必要事項を記入スプレッドシートが一致するかどうかを確認する別のスプレッドシート(​​スプレッドシートには多くの値があり、列全体にプログラムを実行したい) 一致する場合、一致する人の名前で私に電子メールを送信したいスプレッドシートの同じ行に表示されます。

私の働いていませんコード:

function myFunction(e) { 
    var genderSheet1 = e.values[19]; 
    var genderSheet2 = SpreadsheetApp.openById("To Populate"); 
    if (genderSheet1===genderSheet2) { 
    var userName = e.values[1]; 
    var userEmail = "email"; 
    var subject = "WORKER FOUND?"; 
    var message = "Dear " + userName + "," + 
     "\n\n\nThis is the finder" + 
    MailApp.sendEmail(userEmail, subject, message, {attachments:file.next().getBlob()}); 
    } 
} 

が助けてください!

答えて

0

私はいくつかの仮定

  1. あなたのコードに基づいて行くあなたが持っている
  2. ここに書かれているようSpreadsheetApp.openById("To Populate")に変更があり、To Populate実際のコードでは、実際のIDではなく、「移入します」スクリプトトリガーのフォーム送信時にスクリプトを実行するためのトリガーを設定する

また、問題が何であるかは言及していないことに注意してください。私はあなたのコードのいくつかの問題を指摘する必要があります。

最初にvar genderSheet1 = e.values[19];が文字列値になりますが、var genderSheet2 = SpreadsheetApp.openById("To Populate");がオブジェクトなので、if (genderSheet1===genderSheet2)は常にfalseを返します。

しかし、このビットはMailApp.sendEmail(userEmail, subject, message, {attachments:file.next().getBlob()})ですが、コードのどこにでも定義されているfileはありません。使用している構文は、fileIteratorオブジェクトを返すDriveAppメソッドを持つ必要があることを示します。送信しようとしている添付ファイルは何ですか?

documentationのフォーム送信トリガイベントオブジェクトを参照して、そのイベントハンドラを使用するときに期待する内容を確認してください。