8

Googledocs を使用してフォームをセットアップしました。フォームが完了したことを知らせる一般的な応答とは対照的に、フォームに入力された実際のデータをメールで送信したいだけです。

コードなどのスキルや経験はありませんが、これを整理できると確信していました。私は何時間も費やしましたが、運がありませんでした。

私のフォームは非常に基本的なもので、5 つのフィールドがあります。そのうちの 4 つは単なるテキスト応答で、1 つは多肢選択式です。

私はこのチュートをオンラインで見つけました (http://www.labnol.org/internet/google-docs-email-form/20884/)。仕事に。

このサイトから、次のコードを入力しました。

function sendFormByEmail(e) 
{    
  var email = "reports.mckeir@gmail.com"; 

  var subject = "Google Docs Form Submitted";  

  var s = SpreadsheetApp.getActiveSheet();
  var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];    
  var message = "";    

 for(var i in headers)
message += headers[i] + ' = '+ e.namedValues[headers[i]].toString() + "\n\n"; 

  MailApp.sendEmail(email, subject, message); 
}

これに対して、次の応答が返されます: ->

あなたのスクリプト、Contact Us Form Mailer は最近正常に終了しませんでした。失敗の概要を以下に示します。このスクリプトのトリガーを構成するか、今後の障害通知を受信するための設定を変更するには、ここをクリックしてください。

このスクリプトは、ドキュメント 100% クラブで使用されています。

詳細:

Start               Function        Error Message                                                       Trigger     End
12/3/12 11:06 PM    sendFormByEmail TypeError: Cannot call method "toString" of undefined. (line 12)    formSubmit  12/3/12 11:06 PM

誰かが私のためにこれに光を当てるのを助けることができますか? 必要なデータを含めていないと思いますが、正直なところ手がかりがありません。

4

4 に答える 4

4

回避策http://www.labnol.org/internet/google-docs-email-form/20884/ データをメールとして転送するには、アプリ スクリプトをセットアップする必要があります。

于 2013-01-29T06:33:47.247 に答える
0

これがGoogleフォームの場合、フォームにない余分な列がスプレッドシートにありますか?それらの余分な列を削除すると、それは私のために働き始めました。

于 2013-01-29T17:13:45.293 に答える
-2

スクリプトを使用する必要はありません。Googleスプレッドシートの[ツール]>>[通知ルール]に移動するだけです。そこで、ドキュメントが変更されるたびに必要な情報が記載された電子メールを受信するように設定を変更できます。

于 2012-12-03T23:43:06.290 に答える