Google apps scriptを使ってスプレッドシートにフィルターをかける方法をご紹介します。

- Google apps scriptでフィルターかけたい人
- GASでフィルターかける際に上手く出来ない人
- GASとSheet APIの連携がうまくいかない人
以上のようなことで悩んでいる方に、参考になると思います!
Google apps scriptでfilter|デフォルトだと実行できない
冒頭GIFで使用したスクリプトはコチラ↓
・・だがしかし

よ〜し、コピペして早速実行・・てあれ?動かないぜ?なぜだ?
上記スクリプトはそのまま実行してもフィルターの操作は出来ません。下記エラーが表示されると思います。
ReferenceError: 「Sheets」が定義されていません。

え?じゃあ上のコードはなんなの?嘘なの?ねえはげ管理人、正解のコード教えてよ

実は紹介したコードはウソではなく実際に動くコードです。
ただし外部APIと連携しないと有効にならないメソッドが含まれています。
そのためスクリプトがデフォルト状態ではフィルター操作はできません。
エラーが表示されてしまうんですね。

んなら先に言えwww
Google apps scriptでfilterを操作|Sheet APIと連携する
スクリプトからスプレッドシートのフィルター操作をする際は、「Sheet API」と連携する必要があります。
スクリプトエディタ画面からサクッと連携出来ます。
Sheet API連携手順
フィルター操作を設置するスプレッドシートを開き、「ツール > スクリプトエディタ」を選択。
「スクリプトエディタ > リソース > Googleの拡張サービス」を選択。
Googleの拡張サービス画面が表示されるので・・
下へスクロールして「Google Sheets API」をONにします。
下の黄色いメッセージボックスの「Google APIコンソール」テキストリンクをクリック。
Google Cloud Platformのダッシュボード画面が開くので
左のサイドメニューから「ライブラリ」を選択。
検索窓が表示されるので「sheet」と入力してEnter。
「Google Sheet API」が表示されるのでカードをクリック。
Google Sheets APIカードが表示されるので「有効にする」をクリック。
トラフィック画面が表示されていればOKです!
最後にスクリプトエディタ画面に戻って「OK」をクリックすればSheet APIとの連携は完了です。

(サクサクサクサクくらいじゃん...)
ちなみに他の外部APIの機能については以下記事が詳しいです↓
参照記事Google apps scriptを無料で機能拡張出来る29個のAPIまとめ
スクリプトエディタからSheet APIと上手く連携できましたか?
ではGoogle apps scriptでスプレッドシートのfilterを操作していきます。