2017-06-09 17 views
0

私は次の行を認識しています: form.setDestination(FormApp.DestinationType.SPREADSHEET、ss1.getId());フォームをスプレッドシートの特定のシートに送信する方法はありますか?

しかし、フォーム提出をappendRow /スプレッドシートss1内の特定のシートに送信しようとしています。どのようにGoogleアプリのスクリプト内でそれを行うには?上記はスプレッドシートss1を指しており、そのスプレッドシート内に「フォーム応答」シートを作成しています。

ガイダンスのために事前に感謝!

P.S.ちょっとした背景のために、目標のシート名の「現在の月。年」形式の予算のGoogleシートファイルに経費データを送信するフォームを設定しようとしています。

+0

アドオンを使用しますか?少なくともこれを行うことができるアドオンがあります。 –

答えて

0

あなたは(フォームませスプレッドシートのスクリプトエディタ用のスクリプトエディタでの)カスタムイベントハンドラ関数を記述し、インストール可能なトリガー(see documentation)を介してイベントを提出するフォームにバインドすることができます。

フォームのデータを渡すスプレッドシートとターゲットシートを参照することができます。ただし、Form Service APIsを知っている必要があります。また、フォームに返される「リンクされた」スプレッドシートを持たないため、フォームの回答データを手動で抽出して書式を設定する必要があります。あなたが場所にその機能を持っていたら、あなたはインストールトリガーを作成

var SPREADSHEET_ID = "[Your spreadsheet ID]", 
    SHEET_NAME = "[Your sheet name]"; 

function onFormSubmit(e) { 
    var sheet = SpreadsheetApp.openById(SPREADSHEET_ID).getSheetByName(SHEET_NAME), 
     form = FormApp.getActiveForm(); 

    // Extract and format form data and inject it into the sheet 
} 

は、イベントを提出フォームにバインドするために、次のよう

だから、(フォームのスクリプトエディタから)イベントハンドラ関数を書くことができツールバーの[編集]メニューコマンドを使用して、フォームのスクリプトエディタを開きます。 Here is a link to the steps you'll need to follow to create the trigger

希望に役立ちます。

+0

ありがとう!意味をなさない私はそれを試してみましょう –

+0

魅力のように動作します!どうもありがとうございます! –

+0

よろしくお願いします!そして、あなたは大歓迎です。 –

関連する問題