2017-09-21 6 views
1

スクリプトを含むスプレッドシートがあります。 このスクリプトでは、TPという別のスプレッドシートを作成しました。 このTPスプレッドシートでトリガを設定したいとします。 これは、ONPENトリガーにとって簡単です。別の「親」スプレッドシートのスクリプトから作成されたスプレッドシートの時間ベースのトリガーを設定する方法

ScriptApp.newTrigger("agendaCheck") 
    .forSpreadsheet(TP) 
    .onOpen() 
    .create(); 

しかし、時間ベースのトリガーではこれを行うことはできません。

 ScriptApp.newTrigger("agendaCheck") 
    .forSpreadsheet(TP) 
    .timeBased() 
    .atHour(3) 
    .everyDays(1) 
    .create(); 

これは、エラーを実行します:オブジェクトSpreadsheetTriggerBuilderに時間ベースの機能を見つけることができない...

+0

私は回避策について考えています。スクリプトがあるテンプレートをコピーして、TPスプレッドシートを作成することができました。このローカルスクリプトでは、関数(makeTimeBaseTrigger)を配置します。次に、makeTimeBaseTrigger関数を実行している親スプレッドシートのonopenトリガーフォームを設定します。ただ問題は、私はそれが最初に実行されなければならないことをpropablyにしなければならないということです...だからいいです.. –

答えて

0

SpreadsheetTriggerBuilderクラスは、単純なトリガー(onOpen()onEdit()、など)へのアクセスを提供します。

ScriptApp.newTrigger('myFunction') 
    .timeBased() 
    .atHour(3) 
    .everyDays(1) 
    .create(); 

とTPのスプレッドシートにアクセスする機能にmyFunctionをバインドする:あなたが使用する必要があります。

関連する問題