(license)みなさん、こんにちは!タカハシ(@ntakahashi0505)です。ScriptでBotを作成しながら、GASプログラミングの基礎を学ぶシリーズをお送りしています。前回の記事はこちらです。Scriptを学ぶシリーズ、Botの作成を目指しております。実行時に「承認してください」とスクリプトからのアクセス許可が求められる件について、詳しく解説していきます。tonari-it.com2018.03.15GASのスクリプト実行時の認証についてお伝えしました。これまでの記事では、基礎中の基礎過ぎて、Botの香りは全然なかったんですが、今回からようやくBotっぽさ出していきますよ!今回は、GASでスプレッドシートを操作していく際に知っておくべき、オブジェクトとその基礎についてお伝えします。オブジェクトSpreadsheetAppについて、そして、アクティブなスプレッドシートを取得する方法もお伝えしますよ。作成するBotの説明オブジェクトとはSpreadsheetオブジェクト・Sheetオブジェクト・Rangeオブジェクトアクティブなスプレッドシートを取得するオブジェクトSpreadsheetAppとはアクティブなスプレッドシート名をログ出力するスクリプトまとめ連載目次:超初心者向けGASでBotを作りながら基礎を学ぶ作成するBotの説明まず、どんなBotを作成するのかについて説明をしておきますね。以下のようなスプレッドシートを用意しました。珠玉の名言を集めたリストです。これらのリストの中から、何かしらかの法則で一つを選んで、チャットワークやSlackなどのチャットサービスに定期的に送信するBotツールの作成を目指したいと思います。オブジェクトとはGASでは、スプレッドシートをはじめ各サービスの操作対象とするモノを「オブジェクト」と言います。スプレッドシートを取り扱うSpreadsheetサービスでは、以下のようなオブジェクトとそれを操作するための命令であるメソッドが用意されています。スプレッドシート:Spreadsheetオブジェクトシート:Sheetオブジェクトセル範囲:RangeオブジェクトSpreadsheetオブジェクト・Sheetオブジェクト・Rangeオブジェクト例えば、3行目のアインシュタインの名言を送りたいとします。その場合、まずスプレッドシート「名言Bot」のシート「シート1」のA3セルの値を取得するという処理をする必要があります。オブジェクトへの操作という視点で、この操作を表現すると以下のようになります。スプレッドシート「名言Bot」をSpreadsheetオブジェクトとして取得するそのSpreadsheetオブジェクトの配下にあるシート「シート1」をSheetオブジェクトとして取得するそのSheetオブジェクトの配下にあるA3セルをRangeオブジェクトとして取得するそのRangeオブジェクトの値を取得するアクティブなスプレッドシートを取得するでは、具体的にそれらの処理の仕方を確認していきましょう。スプレッドシートをSpreadsheetオブジェクトとして取得します。その方法はいくつかあるのですが、コンテナバインドスクリプトの場合、最も簡単なのはアクティブなスプレッドシートを取得するgetActiveSpreadsheetメソッドを使う方法です。アクティブなスプレッドシートというのは、スクリプトがバインドしているスプレッドシートのことです。このメソッド一つで一意にスプレッドシートが決まるのです。SpreadsheetApp.getActiveSpreadsheet()オブジェクトSpreadsheetAppとはさて、「SpreadsheetApp」というのが出てきますが、これは何でしょう?これは、Spreadsheetサービスでいうところのトップレベルのオブジェクトと呼ばれるものです。スクリプトからスプレッドシートサービスの何らかのオブジェクトを操作する場合には、まずこのSpreadsheetAppオブジェクトを経由して取得しにいく必要があります。Spreadsheetサービスの最も上位にあるオブジェクト、トップレベルのオブジェクト、オブジェクトの大親玉、そんな感じです。アクティブなスプレッドシート名をログ出力するスクリプトでは、簡単な例を紹介しましょう。以下のようなスクリプト作成します。SpreadsheetApp.getActiveSpreadsheet();Logger.log(ss.getName());}アクティブなスプレッドシートを取得して、それを変数ssに格納します。その変数を使って、取得したスプレッドシート名をログ出力するというものです。getNameメソッドはその名の通り、スプレッドシート名を取得するメソッドです。getName()実行すると、以下のように、スプレッドシート名「名言Bot」がログ出力として得られます。Scriptでスプレッドシートを操作する際の「オブジェクト」の基礎中の基礎についてお伝えしました。オブジェクトとは何かSpreadsheetサービスで取り扱えるオブジェクト(Spreadsheetオブジェクト、Sheetオブジェクト、Rangeオブジェクト)オブジェクトSpreadsheetAppとはアクティブなスプレッドシートを取得するgetActiveSpreadsheetメソッドなどなど、いずれも超重要項目ですね...!ぜひバッチリ押さえておいてください。次回、今回の続きで、シートの取得の方法についてお伝えします。Script入門シリーズとして、GASプログラミングの基礎をお伝えしています。今回は、スプレッドシートからシートを取得する2つの方法をお伝えします。Script(GAS)をはじめるためのメリットは山程ありますが、何を作ったらいいの?と悩んでしまうこともありますよね。そんな時に、おすすめしたいのが「Bot」の作成です。このシリーズでは、超初心者向けにGASでBotを作る方法を題材としながら、GASプログラミングの一通りの流れと書き方について学んでいきます。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。Scriptのクラス」ということでシリーズをお送りしております。GASでオブジェクトのデータをスプレッドシートに反映させるメソッドの作り方をお伝えします。ScriptでonOpenイベントハンドラとSpreadsheetオブジェクトのaddMenuメソッドを使って、スプレッドシートに独自のメニューを追加する方法をお伝えします。Scriptを使用して、GmailのメッセージIDを取得・利用して、検索条件にヒットしたスレッドに含まれるメッセージのうち、新規メッセージのみをスプレッドシートに追記する方法を紹介しています。Script入門シリーズとして、GASプログラミングの基礎をお伝えしています。今回は、スプレッドシートからシートを取得する2つの方法をお伝えします。ScriptでGoogleドライブの指定のフォルダにスプレッドシートファイルを追加・削除する方法です。追加と削除ができれば、移動もできます。ルートフォルダについても触れています。Scriptで備品購入申請を題材にワークフローを作る方法をお伝えしています。今回は、GASでURLを踏んでスクリプトを動作させたときにパラメータを渡す方法をお伝えします。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント108セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント108セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。RowSourceプロパティとAddItemメソッド2020.01.21GASでGoogleスライドのSlideオブジェクトの概要とその取得方法2020.01.162020.01.24Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。