2018.02.26みなさんこんにちは!うえはら(@tifoso_str)です。前回は毎日決まった時刻にスクリプトを実行するトリガー設定についてお伝えしました。Scriptのトリガー設定は毎日実行する場合は、午前8時~9時のように1時間の幅があります。時間を細かく指定するには、2018年2月16日08:30のように日にちも設定する必要があります。この二つを使用して、毎日指定した時間にスクリプトを実行させるトリガーを設定します。tonari-it.com2018.02.21ですが、作成したsetTriggerスクリプトで「myFunction」を呼び出すトリガーが毎日作成されます。トリガーは実行されても、そのまま残るので毎日増えていくことになります。11:05と11:15に「myFunction」を呼び出したトリガーですが、19:30でもそのまま残っています。そこで今回は、myFunctionを実行するときに、使用済みのトリガーを削除する方法をお伝えします。指定のトリガーを削除するスクリプトそれでは、指定のトリガーを削除するスクリプトをご紹介します。下記スクリプトを実行すると、myFunctionを呼び出すトリガーを削除します。トリガーの削除このようになるので、一つずつ解説していきます。トリガーの取得まずは、プロジェクトに関連付けられている全てのトリガーを取得します。トリガーの取得にはScriptAppクラスのgetProjectTriggersメソッドを使用します。ScriptApp.getProjectTriggers()getProjectTriggersメソッドの戻り値はTriggerオブジェクトの配列となっているので、2行目で取得した全てのトリガーを配列triggersに代入しています。削除したい指定のトリガーは「myFunction」を呼び出すトリガーです。トリガーが呼び出す(実行する)ファンクション名を確認する為に、TriggerクラスのgetHandlerFunctionメソッドを利用します。Triggerオブジェクト.getHandlerFunction()getHandlerFunctionメソッドの戻り値はファンクション名なので、if文を利用して、取得したファンクション名が「myFunction」か判定し、同じであれば次のトリガー削除に進みます。トリガーの削除トリガーの削除にはdeleteTriggerメソッドを使用します。ScriptApp.deleteTrigger()for文とif文を利用して、取得したファンクション名が「myFunction」かの判定を、配列の先頭から配列の長さの回数だけ繰り返し処理します。これで、毎日setTriggerを呼び出すトリガーは削除されずに、setTriggerで作成したトリガーだけが削除されます。トリガーを削除するスクリプトを呼び出す毎日指定時刻に実行するスクリプトが呼び出された瞬間、その呼び出したトリガーは不要となります。今回呼び出されるのは「myFunction」なので、この中の実行したい処理の前でdelTriggerを呼び出して、トリガーを削除します。Scriptで指定のトリガーだけを削除する方法をお伝えしました。前回の毎日決まった時刻にスクリプトを実行するトリガー設定と併せて使用することで、メニューからでは設定できない内容でも、自由にトリガー設定できるようになります。次回は休みの日はゆっくりしたい!ということで、平日のみトリガーを作成する方法を解説します。連載目次:GASのスクリプトからトリガーを操作する方法GASのトリガーはメニューから設定する以外に、スクリプトからも設置や削除が行えます。本シリーズでは、ScriptAppsサービスを使ったトリガーの操作方法についてお伝えしていきます。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。Scriptでの日時について解説します。Dateオブジェクトの生成のいくつかの種類、要素を取得するメソッド、日付と時刻の分解などです。Script【GAS×freeeAPI】APIリクエストのレスポンスから必要データのみを取り出す「当日入金予定の取引一覧を自動でチャットワークに送信する」シリーズの第4回目。APIからのレスポンスをオブジェクトに変換して、配列が入れ子になった複雑な構造のオブジェクトから必要データのみを取得する方法を紹介しています。Scriptでサイドバーを作る方法のはじめの一歩の概要編スプレッドシートやドキュメントのサイドバーはGASで自作することができます。今回は、GASでサイドバーを作成する前にまず読んで起きたい、その概要としてサイドバーとは何?その作り方は?についてお伝えします。Appsスプレッドシートのマクロ機能で関数のインポートをする方法とマクロの削除の方法Googleスプレッドシートに搭載されたマクロ記録機能について、初心者向けにその使い方をお伝えしています。今回は作成した関数をマクロとして登録する方法と、マクロを削除する方法についてお伝えしていきます。Scriptでtry~catch文でエラー処理をしていきます。チャットワークの翻訳チャットを例にエラーが発生したかどうかを判定して、エラーによって処理を分ける方法をお伝えします。ScriptでGoogleドライブ内のファイルを目的のフォルダに移動したいということはよくあります。今回はそのための準備としてフォルダやファイルをIDで操作する方法です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。Scriptが「V8ランタイム」をサポート!モダンなECMAScript構文が使えるようになった2020.02.072020.02.08GASでコピーしたGoogleスライドのプレゼンテーションを取得する方法2020.02.052020.02.05Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。