Google Apps Script目的別リファレンス 実践サンプルコード付き 第2版
書籍情報
発売日 : 2022年05月21日
著者/編集 : 清水亮/枡田健吾
出版社 : 秀和システム
発行形態 : 単行本
ページ数 : 736p
書籍説明
内容紹介
実際の現場のテクニックがボリューム満載の
"使える"実用コード!!
・丁寧な解説で、基礎から実践までしっかり身に着く。
・スプレッドシートやGmailを自動化。データ作業が簡単に。
・手軽にDX!無駄な作業がとってもきらいな人のため自動化の手始めに最適。
「本気の!!業務効率化」
無償Googleアカウントで今日から始める"効率化"
------
Excelのマクロに似た「スクリプト」を書けば、Gmailや「スプレッドシート」などのGoogleサービスを更に効率的に、思うように使えます。そのスクリプトを書いて実行するプログラミング環境が、Google Apps Script(GAS)です。
本書は、実務での利用頻度が高い「スプレッドシート」を中心に、「こんなことをするには?」というリファレンス(逆引き)形式でGASの機能を解説。一般のプログラミング言語リファレンスのように、クラス名やメソッド名でも引けるから、上級者にも便利です。
"使える"実用コード!!
・丁寧な解説で、基礎から実践までしっかり身に着く。
・スプレッドシートやGmailを自動化。データ作業が簡単に。
・手軽にDX!無駄な作業がとってもきらいな人のため自動化の手始めに最適。
「本気の!!業務効率化」
無償Googleアカウントで今日から始める"効率化"
------
Excelのマクロに似た「スクリプト」を書けば、Gmailや「スプレッドシート」などのGoogleサービスを更に効率的に、思うように使えます。そのスクリプトを書いて実行するプログラミング環境が、Google Apps Script(GAS)です。
本書は、実務での利用頻度が高い「スプレッドシート」を中心に、「こんなことをするには?」というリファレンス(逆引き)形式でGASの機能を解説。一般のプログラミング言語リファレンスのように、クラス名やメソッド名でも引けるから、上級者にも便利です。
目次
■Part 1
■Chapter 1 Google Apps Script 基礎
●Google Apps Scriptの基礎
○1[1-1] GASの特徴
○2[1-2] GASを利用するための準備物
○3[1-3] 制限と割当
●6分/実行
○4[1-4] Apps Scriptサービス ― Google Workspace services, Utility services, Other Google services
●開発環境
○5[1-5] プロジェクト
○6[1-6] コンテナバインドプロジェクト
○7[1-7] スタンドアロンプロジェクト
○8[1-8] UI
○9[1-9] マニフェストファイル ― appsscript.json, タイムゾーン
○10[1-10] Apps Script ダッシュボード
●スクリプト
○11[1-11] スクリプト作成 ― スクリプトエディタ
○12[1-12] スクリプト実行
○13[1-13] 入力補完機能
○14[1-14] ショートカットキー
○15[1-15] プロパティストア
○16[1-16] デプロイ
●ログ
○17[1-17] ログ ― 実行ログ, Cloudログ
○18[1-18] console.log()とLogger.log()
○19[1-19] デバッグ
●トリガー
○20[1-20] トリガー
○21[1-21] シンプルトリガー
○22[1-22] インストーラブルトリガー
○23[1-23] イベントオブジェクトの役割
○24[1-24] イベントオブジェクトの使い方
●Google Apps Script Reference
○25[1-25] 公式リファレンス
■Chapter 2 JavaScript 基礎
●JavaScriptの基礎
○26[2-1] JavaScriptの基礎知識 ― ECMAScript
○27[2-2] コード記述の基礎知識 ― 関数, ステートメント, セミコロン, インデント
○28[2-3] コメント ― コメントアウト, ドキュメンテーションコメント, JSDoc
●変数・定数
○29[2-4] 変数と定数
○30[2-5] var/let/const
○31[2-6] スコープ
○32[2-7] 命名ルール ― 識別子, 予約語
●データ型
○33[2-8] データ型の種類
○34[2-9] プリミティブ型とオブジェクト型 ― ミュータブル, イミュータブル
○35[2-10] データ型の変換 ― 暗黙的な型変換, 組み込み関数, ラッパーオブジェクト
●演算子
○36[2-11] 演算子の種類
○37[2-12] インクリメント/デクリメント演算子(++, --)
○38[2-13] 単項演算子(typeof, !...etc)
○39[2-14] 算術演算子(+, -, /, *...etc)
○40[2-15] 比較演算子(, ===...etc)
○41[2-16] 論理演算子(&&, ||)
○42[2-17] 代入演算子(=, +=...etc)
○43[2-18] エスケープシーケンス(\n, \"...etc)
●配列
○44[2-19] 一次元配列
○45[2-20] 一次元配列の要素取得
○46[2-21] 一次元配列の要素代入(更新)
○47[2-22] 二次元配列
○48[2-23] 二次元配列の要素取得
○49[2-24] 二次元配列の要素代入(更新)
●オブジェクト
○50[2-25] オブジェクト ― プロパティ, key, value
○51[2-26] オブジェクトの値取得 ― ドット記法, ブラケット記法
○52[2-27] オブジェクトの値代入(更新)
○53[2-28] オブジェクトのメソッド定義
●制御構文
○54[2-29] 制御構造 ― 順次実行, 条件分岐, 繰り返し
○55[2-30] if文
○56[2-31] if...else文
○57[2-32] if...else if文
○58[2-33] for文
○59[2-34] for...of文 ― 反復可能オブジェクト
○60[2-35] for...in文 ― 列挙可能プロパティ
○61[2-36] ジャンプ文
○62[2-37] break文
○63[2-38] continue文
○64[2-39] return文
○65[2-40] try...catch文
○66[2-41] throw文 ― new Error()
●関数
○67[2-42] 関数宣言
○68[2-43] 引数と戻り値 ― 実引数(parameter), 仮引数(argument), return
○69[2-44] 引数の5つのポイント ― デフォルト引数, 可変長引数, 残余引数(レストパラーメータ)
○70[2-45] 関数式(関数リテラル) ― 無名関数(匿名関数), 即時関数
○71[2-46] アロー関数 ― コールバック関数
●クラス
○72[2-47] クラスの理解 ― オブジェクト指向, OOP, プロパティ, メソッド, インスタンス化, インスタンス
○73[2-48] class
○74[2-49] コンストラクタとnew演算子 ― constructor(), new
○75[2-50] this
○76[2-51] クラスのメソッド定義
○77[2-52] プロトタイプ ― prototype
○78[2-53] 静的メンバー ― 静的プロパティ, 静的メソッド, static
○79[2-54] クラス活用例
●ES6
○80[2-55] ES6の記法
○81[2-56] スプレッド構文
○82[2-57] テンプレートリテラル
○83[2-58] 分割代入
■Part 2
■Chapter 3 Spreadsheet
●Spreadsheetサービス
○84[3-1] Spreadsheetサービスの理解 ― SpreadsheetAppクラス, Spreadsheetクラス, Sheetクラス, Rangeクラス
●スプレッドシート
○85[3-2] スプレッドシートの新規作成 ― create()
○86[3-3] スプレッドシートの名前設定 ― rename()
○87[3-4] スプレッドシートのコピー ― copy()
○88[3-5] アクティブなスプレッドシートの取得 ― getActiveSpreadsheet()
○89[3-6] IDからスプレッドシートの取得 ― openById()
○90[3-7] URLからスプレッドシートの取得 ― openByUrl()
○91[3-8] スプレッドシート編集の即時反映 ― flush()
●シート
○92[3-9] アクティブシートの取得 ― getActiveSheet()
○93[3-10] 名前からシートの取得 ― getSheetByName()
○94[3-11] 全シートの取得 ― getSheets()
○95[3-12] シート数の取得 ― getNumSheets()
○96[3-13] シート名の設定 ― setName()
○97[3-14] シートのアクティブ化 ― setActiveSheet()
○98[3-15] アクティブシートのコピー ― duplicateActiveSheet()
○99[3-16] シートの削除 ― deleteSheet()
○100[3-17] アクティブシートの削除 ― deleteActiveSheet()
●セル
○101[3-18] 単一セル/セル範囲の取得 ― getRange()
○102[3-19] 単一セルの値取得 ― getValue()
○103[3-20] セル範囲の値取得 ― getValues()
○104[3-21] 単一セルの表示値取得 ― getDisplayValue(), getFomula(), getFomulas()
○105[3-22] セル範囲の表示値取得 ― getDisplayValues()
○106[3-23] 単一セルへの値入力 ― setValue()
○107[3-24] セル範囲への値入力 ― setValues()
○108[3-25] アクティブセルの取得 ― getCurrentCell()
○109[3-26] アクティブセル範囲の取得 ― getActiveRange()
○110[3-27] 値が存在するセル範囲の取得 ― getDataRange()
○111[3-28] A1形式のアドレス取得 ― getA1Notation()
○112[3-29] フォーマットの設定 ― setNumberFormat(), setNumberFormats()
○113[3-30] データの入力規則の設定 ― newDataValidation(), setDataValidation(), requireValueInList(), build(), メソッドチェーン
○114[3-31] 単一セル/セル範囲のコピー ― copyTo()
○115[3-32] 単一セル/セル範囲のクリア ― clear(), clearContent()
●共通
○116[3-33] スプレッドシート/シート名の取得 ― getName()
○117[3-34] シート/セルのアクティブ化 ― activate()
○118[3-35] スプレッドシート/シートURLの取得 ― getId(), getSheetId(), getUrl()
●行/列
○119[3-36] 単一セル/セル範囲の行番号取得 ― getRow()
○120[3-37] 単一セル/セル範囲の列番号取得 ― getColumn()
○121[3-38] 最終行の取得 ― getLastRow()
○122[3-39] 最終列の取得 ― getLastColumn()
○123[3-40] 行の削除 ― deleteRow()
○124[3-41] 複数行の削除 ― deleteRows()
○125[3-42] 列の削除 ― deleteColumn()
○126[3-43] 複数列の削除 ― deleteColumns()
●権限
○127[3-44] 編集権限の追加 ― addEditor(), addEditors(), removeEditor()
○128[3-45] 閲覧権限の追加 ― addViewer(), addViewers(), removeViewer()
○129[3-46] 編集権限ユーザーの取得 ― getEditors()
○130[3-47] 閲覧権限ユーザーの取得 ― getViewers()
■Chapter 4 Gmail
●Gmailサービス
○131[4-1] Gmailサービスの理解 ― GmailAppクラス, GmailThreadクラス, GmailMessageクラス, GmailAttachmentクラス
●メール作成
○132[4-2] メール送信 ― sendEmail()
○133[4-3] アクティブユーザーのメールアドレス取得 ― getActiveUser(), getEmail()
○134[4-4] メール下書き作成 ― createDraft()
○135[4-5] 下書きメールの取得 ― getDrafts()
○136[4-6] 下書きメールの削除 ― deleteDraft()
○137[4-7] メール全員返信 ― replyAll(), reply()
○138[4-8] メール全員返信の下書き作成 ― createDraftReplyAll(), createDraftReply()
●スレッド
○139[4-9] スレッド(メッセージ)の検索 ― search()
○140[4-10] スレッドのパーマリンク取得 ― getPermalink()
○141[4-11] IDからスレッドの取得 ― getThreadById()
●共通
○142[4-12] スレッド/メッセージIDの取得 ― getId()
●メッセージ
○143[4-13] 単一スレッドからメッセージ取得 ― getMessagesForThread(), getMessages()
○144[4-14] 複数スレッドからメッセージ取得 ― getMessagesForThreads()
○145[4-15] IDからメッセージ取得 ― getMessageById()
○146[4-16] メッセージの受信日時取得 ― getDate()
○147[4-17] メッセージの差出人取得 ― getFrom()
○148[4-18] メッセージの件名取得 ― getSubject()
○149[4-19] メッセージの本文取得(HTML形式) ― getBody()
○150[4-20] メッセージの本文取得(テキスト形式) ― getPlainBody()
○151[4-21] メッセージのCc取得 ― getCc()
○152[4-22] メッセージのBcc取得 ― getBcc(), getTo()
○153[4-23] メッセージの添付ファイル取得 ― getAttachments()
○154[4-24] メッセージのヘッダー取得 ― getHeader()
■Chapter 5 Google Drive
●Driveサービス
○155[5-1] DriveAppサービスの理解 ― DriveAppクラス, Folderクラス, Fileクラス, FolderIteratorクラス, FileIteratorクラス
●イテレータ
○156[5-2] フォルダ/ファイルの存在確認 ― hasNext()
○157[5-3] フォルダ/ファイルの取得 ― next()
●フォルダ
○158[5-4] IDからフォルダ取得 ― getFolderById()
○159[5-5] ルートフォルダの取得 ― getRootFolder()
○160[5-6] 全フォルダの取得 ― getFolders()
○161[5-7] 名前からフォルダ取得 ― getFoldersByName()
○162[5-8] 検索条件と一致するフォルダ取得 ― searchFolders(params)
○163[5-9] 親フォルダの取得 ― getParents()
○164[5-10] フォルダの新規作成 ― createFolder()
●ファイル
○165[5-11] IDからファイル取得 ― getFileById()
○166[5-12] 全ファイルの取得 ― getFiles()
○167[5-13] 名前からファイル取得 ― getFilesByName()
○168[5-14] 検索条件と一致するファイル取得 ― searchFiles(params)
○169[5-15] MIMEタイプからファイル取得 ― getFilesByType(), MimeType
○170[5-16] ファイルの新規作成 ― createFile()
○171[5-17] ファイルのコピー ― makeCopy()
○172[5-18] ファイルのMIMEタイプ取得 ― getMimeType()
●共通
○173[5-19] フォルダ/ファイルの削除 ― setTrashed()
○174[5-20] フォルダ/ファイルの移動 ― moveTo()
○175[5-21] フォルダ/ファイルの名前取得 ― getName()
○176[5-22] フォルダ/ファイルのURL取得 ― getUrl()
○177[5-23] フォルダ/ファイルの作成日時取得 ― getDateCreated()
○178[5-24] フォルダ/ファイルの最終更新日時取得 ― getLastUpdated()
○179[5-25] フォルダ/ファイルのID取得 ― getId()
○180[5-26] フォルダ/ファイルの名前設定 ― setName()
■Chapter 6 Google Calendar
●Calendarサービス
○181[6-1] Calendarサービスの理解 ― CalendarAppクラス, Calendarクラス, CalendarEventクラス, EventGuestクラス
●共通
○182[6-2] カレンダー/カレンダーイベントのID取得 ― getId()
○183[6-3] カレンダー/カレンダーイベントのカラー取得/設定 ― setColor(), getColor(), Color
●カレンダー
○184[6-4] デフォルトカレンダーの取得 ― getDefaultCalendar()
○185[6-5] IDからカレンダー取得 ― getCalendarById()
○186[6-6] 名前からカレンダー取得 ― getCalendarsByName()
○187[6-7] 登録されたカレンダーの取得 ― getAllCalendars()
○188[6-8] 所有カレンダーの取得 ― getAllOwnedCalendars()
○189[6-9] カレンダーの名前取得 ― getName()
●カレンダーイベント
○190[6-10] カレンダーイベントの取得 ― getEvents(), GuestStatus
○191[6-11] IDからカレンダーイベント取得 ― getEventById()
○192[6-12] 特定日のカレンダーイベント取得 ― getEventsForDay()
○193[6-13] カレンダーイベントの作成者取得 ― getCreators()
○194[6-14] カレンダーイベントのタイトル取得 ― getTitle()
○195[6-15] カレンダーイベントの開始日時取得 ― getStartTime()
○196[6-16] カレンダーイベントの終了日時取得 ― getEndTime()
○197[6-17] カレンダーイベントの場所取得 ― getLocation()
○198[6-18] カレンダーイベントの説明取得 ― getDescription()
○199[6-19] カレンダーイベントの終日判定 ― isAllDayEvent()
○200[6-20] カレンダーイベントの新規作成 ― createEvent()
○201[6-21] 終日カレンダーイベントの新規登録 ― createAllDayEvent()
○202[6-22] カレンダーイベントの削除 ― deleteEvent()
○203[6-23] カレンダーイベントのタイトル設定 ― setTitle()
○204[6-24] カレンダーイベントの開始/終了日時設定 ― setTime()
○205[6-25] カレンダーイベントの場所設定 ― setLocation()
○206[6-26] カレンダーイベントの説明設定 ― setDescription()
○207[6-27] カレンダーイベントのリマインダー削除 ― removeAllReminders()
○208[6-28] カレンダーイベントのリマインダー設定 ― addPopupReminder()
○209[6-29] カレンダーイベントのゲストリスト表示設定 ― setGuestsCanSeeGuests()
○210[6-30] カレンダーイベントのタグ(key, vale)設定 ― setTag()
○211[6-31] カレンダーイベントタグのkeyからvalue削除 ― deleteTag()
○212[6-32] カレンダーイベントタグのkeyからvalue取得 ― getTag()
○213[6-33] カレンダーイベントタグのkey全取得 ― getAllTagKeys()
●ゲスト
○214[6-34] カレンダーイベントのゲスト取得 ― getGuestList()
○215[6-35] ゲストのステータス取得 ― getGuestStatus()
○216[6-36] ゲストのメールアドレス取得 ― getEmail()
○217[6-37] カレンダーイベントへのゲスト追加 ― addGuest()
○218[6-38] カレンダーイベントのゲスト削除 ― removeGuest()
■Chapter 7 Google Document
●Documentサービス
○219[7-1] Documentサービスの理解 ― DocumentAppクラス, Documentクラス, Bodyクラス
●ドキュメント
○220[7-2] ドキュメントの新規作成 ― create()
○221[7-3] アクティブドキュメントの取得 ― getActiveDocument()
○222[7-4] IDからドキュメント取得 ― openById()
○223[7-5] URLからドキュメント取得 ― openByUrl()
○224[7-6] ドキュメントのタイトル取得 ― getName()
○225[7-7] ドキュメントの本文領域取得 ― getBody()
○226[7-8] 本文領域からテキスト取得 ― getText()
■Chapter 8 Google Slides
●Slidesサービス
○227[8-1] Slidesサービスの理解 ― SlidesAppクラス, Presentationクラス, Slideクラス, Shapeクラス
●プレゼンテーション
○228[8-2] プレゼンテーションの新規作成 ― create()
○229[8-3] アクティブプレゼンテーションの取得 ― getActivePresentation()
○230[8-4] IDからプレゼンテーション取得 ― openById()
○231[8-5] URLからプレゼンテーション取得 ― openByUrl()
○232[8-6] プレゼンテーションの名前取得 ― getName()
○233[8-7] プレゼンテーションの名前設定 ― setName()
○234[8-8] プレゼンテーションのID取得 ― getId()
○235[8-9] プレゼンテーションのURL取得 ― getUrl()
●スライド
○236[8-10] スライドの全取得 ― getSlides()
○237[8-11] IDからスライド取得 ― getSlideById()
○238[8-12] スライドの更新 ― refreshSlide()
○239[8-13] スライドの追加 ― appendSlide(), PredefinedLayout, SlideLinkingMode
●テキスト/グラフ/画像
○240[8-14] スライド内の文字列置換 ― replaceAllText()
○241[8-15] スライドの画像取得 ― getImages()
○242[8-16] スライドのシェイプ取得 ― getShapes()
○243[8-17] スライドのテキスト取得 ― getText(), asString()
○244[8-18] スライドのグラフ取得 ― getSheetsCharts()
○245[8-19] グラフの更新 ― refresh()
○246[8-20] スライドへの画像貼り付け ― insertImage(), getSourceUrl()
■Chapter 9 Google Forms
●Formsサービス
○247[9-1] Formsサービスの理解 ― FormAppクラス, Formクラス, Itemクラス, FormResponseクラス, ItemResponseクラス
●フォーム
○248[9-2] フォームの新規作成 ― create()
○249[9-3] フォームのタイトル取得 ― getTitle()
○250[9-4] アクティブフォームの取得 ― getActiveForm()
○251[9-5] IDからフォーム取得 ― openById()
○252[9-6] URLからフォーム取得 ― openByUrl()
○253[9-7] フォームのURL取得 ― getEditUrl(), getSummaryUrl(), getPublishedUrl()
○254[9-8] フォームのタイトル設定 ― setTitle()
○255[9-9] フォームの説明設定 ― setDescription()
○256[9-10] フォームのメールアドレス収集可否設定 ― setCollectEmail()
○257[9-11] フォームのログイン要否設定 ― setRequireLogin()
●設問
○258[9-12] (入力回答)一行テキストの追加 ― addTextItem()
○259[9-13] (入力回答)複数行テキストの追加 ― addParagraphTextItem()
○260[9-14] (選択回答)ラジオボタンの追加 ― addMultipleChoiceItem()
○261[9-15] (選択回答)チェックボックスの追加 ― addCheckboxItem()
○262[9-16] (選択回答)ドロップダウンリストの設定 ― addListItem()
○263[9-17] 質問の設定 ― setTitle()
○264[9-18] 質問の説明設定 ― setHelpText()
○265[9-19] 質問の回答必須/任意設定 ― setRequired()
○266[9-20] 回答選択肢の設定 ― setChoiceValues()
○267[9-21] 回答選択肢にその他を追加 ― showOtherOption()
●レスポンス
○268[9-22] フォームの回答取得 ― getResponses()
○269[9-23] タイムスタンプの取得 ― getTimestamp()
○270[9-24] メールアドレスの取得 ― getRespondentEmail()
○271[9-25] アイテムレスポンスの取得 ― getItemResponses()
○272[9-26] 質問の取得 ― getItem(), getTitle()
○273[9-27] アイテムの回答取得 ― getResponse()
■Chapter 10 UI
●ダイアログボックス
○274[10-1] ボタン選択型のダイアログボックス表示 ― Browserクラス, Uiクラス, msgBox(), getUi(), alert(), ButtonSet
○275[10-2] テキスト入力型のダイアログボックス表示 ― inputBox(), prompt(), ButtonSet
○276[10-3] 選択ボタンの取得 ― getSelectedButton()
○277[10-4] 入力テキストの取得 ― getResponseText()
●カスタムメニュー
○278[10-5] カスタムメニューの作成 ― createMenu(), addItem(), addToUi()
■Chapter 11 Web
●API
○279[11-1] HTTPレスポンスの取得 ― UrlFetchAppクラス, fetch()
○280[11-2] ヘッダー情報の取得 ― getHeaders()
○281[11-3] ステータスコードの取得 ― getResponseCode()
○282[11-4] コンテンツテキストの取得 ― getContentText()
●HTML
○283[11-5] 静的HTMLの生成 ― createHtmlOutput(), createHtmlOutputFromFile(), append()
○284[11-6] 動的HTMLの生成 ― createTemplate(), createTemplateFromFile(), evaluate(), getCode()
○285[11-7] HTMLメールの本文取得 ― getContent()
○286[11-8] HTMLのダイアログボックス表示 ― showModalDialog(), showModelessDialog()
○287[11-9] HTMLのサイドバー表示 ― showSidebar()
■Chapter 12 Script
●時間
○288[12-1] スクリプト実行時間の取得 ― consoleクラス, time(), timeEnd()
○289[12-2] スクリプトの一時停止/遅延 ― Utilitiesクラス, sleep()
●排他制御
○290[12-3] ロックの取得(排他制御①) ― LockServiceクラス, getDocumentLock(), getUserLock(), getScriptLock()
○291[12-4] ロックの有効化(排他制御②) ― tryLock(), waitLock(), hasLock()
○292[12-5] ロックの解除(排他制御③) ― releaseLock()
●トリガー
○293[12-6] 時間ベースのトリガー新規作成 ― ScriptAppクラス, newTrigger(), timeBased()
○294[12-7] 時間ベーストリガーの起動日時設定 ― at()
○295[12-8] トリガーの有効化 ― create()
○296[12-9] 全トリガーの取得 ― getProjectTriggers()
○297[12-10] 関数名の取得 ― getHandlerFunction()
○298[12-11] トリガーの削除 ― deleteTrigger()
■Chapter 13 Blob
●ファイル
○299[13-1] ファイルの取得 ― getBlob(), getAs()
○300[13-2] ファイルの名前取得 ― getName()
○301[13-3] ファイルの名前設定 ― setName()
○302[13-4] ファイルのコンテンツタイプ取得 ― getContentType()
○303[13-5] ファイルの新規作成 ― newBlob()
■Chapter 14 Properties
●プロパティストア
○304[14-1] プロパティストアの取得 ― PropertiesServiceクラス, getScriptProperties(), getUserProperties(), getDocumentProperties()
○305[14-2] プロパティストアへのプロパティ(key, value)格納 ― setProperty(), setProperties()
○306[14-3] プロパティストアのkey全取得 ― getKeys()
○307[14-4] プロパティストアのkeyからvalue取得 ― getProperty()
○308[14-5] プロパティストアのプロパティ全取得 ― getProperties()
○309[14-6] プロパティストアのkeyからプロパティ削除 ― deleteProperty()
○310[14-7] プロパティストアのプロパティ全削除 ― deleteAllProperties()
■Chapter 15 日付・文字列・数値
●日付
○311[15-1] 現在日時の取得 ― new Date()
○312[15-2] 特定日時の取得 ― new Date()
○313[15-3] 日付の表示形式設定 ― Utilitiesクラス, formatDate(), toString(), toLocaleString(), toDateString(), toLocaleDateString(), toTimeString(), toLocaleTimeString()
○314[15-4] 年の取得/設定 ― getFullYear(), setFullYear()
○315[15-5] 月の取得/設定 ― getMonth(), setMonth()
○316[15-6] 日の取得/設定 ― getDate(), setDate()
○317[15-7] 曜日の取得 ― getDay()
●文字列
○318[15-8] 文字列の位置取得 ― indexOf()
○319[15-9] 文字列の有無判定 ― includes()
○320[15-10] 検索文字列での開始判定 ― startsWith()
○321[15-11] 検索文字列での終了判定 ― endsWith()
○322[15-12] 特定文字で文字列の長さ調整 ― padStart()
○323[15-13] 文字列を区切り文字で分割 ― split()
○324[15-14] 文字列の切り取り ― slice(), substring(), substr()
○325[15-15] 数値の文字列変換 ― toString(), String()
●正規表現
○326[15-16] 正規表現の利用 ― new RegEx(), /~/
○327[15-17] 文字列の置換 ― replace(), replaceAll()
○328[15-18] 文字列の一致判定 ― test()
○329[15-19] 一致文字列の取得 ― match(), matchAll(), exec()
○330[15-20] 一致文字列の位置取得 ― search()
●数値
○331[15-21] 有理数の判定 ― isFinite()
○332[15-22] 整数の判定 ― isInteger()
○333[15-23] 文字列の数値変換 ― parseInt(), parseFloat(), Number()
○334[15-24] 小数点の切り上げ ― ceil()
○335[15-25] 小数点の切り捨て ― floor()
○336[15-26] 小数点の四捨五入 ― round()
■Chapter 16 配列 ― 配列
○337[16-1] 配列メソッド ― Arrayクラス
○338[16-2] 要素数の取得 ― length
●アクセサメソッド
○339[16-3] 配列の結合 ― concat()
○340[16-4] 二次元配列を一次元配列に変更(フラット化) ― flat()
○341[16-5] 要素を特定文字で結合 ― join()
○342[16-6] 文字列の位置取得 ― indexOf()
○343[16-7] 文字列の有無判定 ― includes()
●変更メソッド
○344[16-8] 末尾への要素追加 ― push()
○345[16-9] 先頭への要素追加 ― unshift()
○346[16-10] 末尾から要素の抜き取り ― pop()
○347[16-11] 先頭から要素の抜き取り ― shift()
○348[16-12] 要素の反転 ― reverse()
●反復メソッド
○349[16-13] (配列各要素)コールバック実行 ※ 戻り値無し ― forEach()
○350[16-14] (配列各要素)コールバック実行 ※ 戻り値有り ― map()
○351[16-15] (配列各要素)すべての要素が条件を満たすか判定 ― every()
○352[16-16] (配列各要素)最低1つの要素が条件を満たすか判定 ― some()
○353[16-17] (配列各要素)条件を満たす要素で新しい配列を生成 ― filter(), find()
○354[16-18] (配列各要素)ユニークな値の生成 ― reduce(), reduceRight()
■Chapter 1 Google Apps Script 基礎
●Google Apps Scriptの基礎
○1[1-1] GASの特徴
○2[1-2] GASを利用するための準備物
○3[1-3] 制限と割当
●6分/実行
○4[1-4] Apps Scriptサービス ― Google Workspace services, Utility services, Other Google services
●開発環境
○5[1-5] プロジェクト
○6[1-6] コンテナバインドプロジェクト
○7[1-7] スタンドアロンプロジェクト
○8[1-8] UI
○9[1-9] マニフェストファイル ― appsscript.json, タイムゾーン
○10[1-10] Apps Script ダッシュボード
●スクリプト
○11[1-11] スクリプト作成 ― スクリプトエディタ
○12[1-12] スクリプト実行
○13[1-13] 入力補完機能
○14[1-14] ショートカットキー
○15[1-15] プロパティストア
○16[1-16] デプロイ
●ログ
○17[1-17] ログ ― 実行ログ, Cloudログ
○18[1-18] console.log()とLogger.log()
○19[1-19] デバッグ
●トリガー
○20[1-20] トリガー
○21[1-21] シンプルトリガー
○22[1-22] インストーラブルトリガー
○23[1-23] イベントオブジェクトの役割
○24[1-24] イベントオブジェクトの使い方
●Google Apps Script Reference
○25[1-25] 公式リファレンス
■Chapter 2 JavaScript 基礎
●JavaScriptの基礎
○26[2-1] JavaScriptの基礎知識 ― ECMAScript
○27[2-2] コード記述の基礎知識 ― 関数, ステートメント, セミコロン, インデント
○28[2-3] コメント ― コメントアウト, ドキュメンテーションコメント, JSDoc
●変数・定数
○29[2-4] 変数と定数
○30[2-5] var/let/const
○31[2-6] スコープ
○32[2-7] 命名ルール ― 識別子, 予約語
●データ型
○33[2-8] データ型の種類
○34[2-9] プリミティブ型とオブジェクト型 ― ミュータブル, イミュータブル
○35[2-10] データ型の変換 ― 暗黙的な型変換, 組み込み関数, ラッパーオブジェクト
●演算子
○36[2-11] 演算子の種類
○37[2-12] インクリメント/デクリメント演算子(++, --)
○38[2-13] 単項演算子(typeof, !...etc)
○39[2-14] 算術演算子(+, -, /, *...etc)
○40[2-15] 比較演算子(, ===...etc)
○41[2-16] 論理演算子(&&, ||)
○42[2-17] 代入演算子(=, +=...etc)
○43[2-18] エスケープシーケンス(\n, \"...etc)
●配列
○44[2-19] 一次元配列
○45[2-20] 一次元配列の要素取得
○46[2-21] 一次元配列の要素代入(更新)
○47[2-22] 二次元配列
○48[2-23] 二次元配列の要素取得
○49[2-24] 二次元配列の要素代入(更新)
●オブジェクト
○50[2-25] オブジェクト ― プロパティ, key, value
○51[2-26] オブジェクトの値取得 ― ドット記法, ブラケット記法
○52[2-27] オブジェクトの値代入(更新)
○53[2-28] オブジェクトのメソッド定義
●制御構文
○54[2-29] 制御構造 ― 順次実行, 条件分岐, 繰り返し
○55[2-30] if文
○56[2-31] if...else文
○57[2-32] if...else if文
○58[2-33] for文
○59[2-34] for...of文 ― 反復可能オブジェクト
○60[2-35] for...in文 ― 列挙可能プロパティ
○61[2-36] ジャンプ文
○62[2-37] break文
○63[2-38] continue文
○64[2-39] return文
○65[2-40] try...catch文
○66[2-41] throw文 ― new Error()
●関数
○67[2-42] 関数宣言
○68[2-43] 引数と戻り値 ― 実引数(parameter), 仮引数(argument), return
○69[2-44] 引数の5つのポイント ― デフォルト引数, 可変長引数, 残余引数(レストパラーメータ)
○70[2-45] 関数式(関数リテラル) ― 無名関数(匿名関数), 即時関数
○71[2-46] アロー関数 ― コールバック関数
●クラス
○72[2-47] クラスの理解 ― オブジェクト指向, OOP, プロパティ, メソッド, インスタンス化, インスタンス
○73[2-48] class
○74[2-49] コンストラクタとnew演算子 ― constructor(), new
○75[2-50] this
○76[2-51] クラスのメソッド定義
○77[2-52] プロトタイプ ― prototype
○78[2-53] 静的メンバー ― 静的プロパティ, 静的メソッド, static
○79[2-54] クラス活用例
●ES6
○80[2-55] ES6の記法
○81[2-56] スプレッド構文
○82[2-57] テンプレートリテラル
○83[2-58] 分割代入
■Part 2
■Chapter 3 Spreadsheet
●Spreadsheetサービス
○84[3-1] Spreadsheetサービスの理解 ― SpreadsheetAppクラス, Spreadsheetクラス, Sheetクラス, Rangeクラス
●スプレッドシート
○85[3-2] スプレッドシートの新規作成 ― create()
○86[3-3] スプレッドシートの名前設定 ― rename()
○87[3-4] スプレッドシートのコピー ― copy()
○88[3-5] アクティブなスプレッドシートの取得 ― getActiveSpreadsheet()
○89[3-6] IDからスプレッドシートの取得 ― openById()
○90[3-7] URLからスプレッドシートの取得 ― openByUrl()
○91[3-8] スプレッドシート編集の即時反映 ― flush()
●シート
○92[3-9] アクティブシートの取得 ― getActiveSheet()
○93[3-10] 名前からシートの取得 ― getSheetByName()
○94[3-11] 全シートの取得 ― getSheets()
○95[3-12] シート数の取得 ― getNumSheets()
○96[3-13] シート名の設定 ― setName()
○97[3-14] シートのアクティブ化 ― setActiveSheet()
○98[3-15] アクティブシートのコピー ― duplicateActiveSheet()
○99[3-16] シートの削除 ― deleteSheet()
○100[3-17] アクティブシートの削除 ― deleteActiveSheet()
●セル
○101[3-18] 単一セル/セル範囲の取得 ― getRange()
○102[3-19] 単一セルの値取得 ― getValue()
○103[3-20] セル範囲の値取得 ― getValues()
○104[3-21] 単一セルの表示値取得 ― getDisplayValue(), getFomula(), getFomulas()
○105[3-22] セル範囲の表示値取得 ― getDisplayValues()
○106[3-23] 単一セルへの値入力 ― setValue()
○107[3-24] セル範囲への値入力 ― setValues()
○108[3-25] アクティブセルの取得 ― getCurrentCell()
○109[3-26] アクティブセル範囲の取得 ― getActiveRange()
○110[3-27] 値が存在するセル範囲の取得 ― getDataRange()
○111[3-28] A1形式のアドレス取得 ― getA1Notation()
○112[3-29] フォーマットの設定 ― setNumberFormat(), setNumberFormats()
○113[3-30] データの入力規則の設定 ― newDataValidation(), setDataValidation(), requireValueInList(), build(), メソッドチェーン
○114[3-31] 単一セル/セル範囲のコピー ― copyTo()
○115[3-32] 単一セル/セル範囲のクリア ― clear(), clearContent()
●共通
○116[3-33] スプレッドシート/シート名の取得 ― getName()
○117[3-34] シート/セルのアクティブ化 ― activate()
○118[3-35] スプレッドシート/シートURLの取得 ― getId(), getSheetId(), getUrl()
●行/列
○119[3-36] 単一セル/セル範囲の行番号取得 ― getRow()
○120[3-37] 単一セル/セル範囲の列番号取得 ― getColumn()
○121[3-38] 最終行の取得 ― getLastRow()
○122[3-39] 最終列の取得 ― getLastColumn()
○123[3-40] 行の削除 ― deleteRow()
○124[3-41] 複数行の削除 ― deleteRows()
○125[3-42] 列の削除 ― deleteColumn()
○126[3-43] 複数列の削除 ― deleteColumns()
●権限
○127[3-44] 編集権限の追加 ― addEditor(), addEditors(), removeEditor()
○128[3-45] 閲覧権限の追加 ― addViewer(), addViewers(), removeViewer()
○129[3-46] 編集権限ユーザーの取得 ― getEditors()
○130[3-47] 閲覧権限ユーザーの取得 ― getViewers()
■Chapter 4 Gmail
●Gmailサービス
○131[4-1] Gmailサービスの理解 ― GmailAppクラス, GmailThreadクラス, GmailMessageクラス, GmailAttachmentクラス
●メール作成
○132[4-2] メール送信 ― sendEmail()
○133[4-3] アクティブユーザーのメールアドレス取得 ― getActiveUser(), getEmail()
○134[4-4] メール下書き作成 ― createDraft()
○135[4-5] 下書きメールの取得 ― getDrafts()
○136[4-6] 下書きメールの削除 ― deleteDraft()
○137[4-7] メール全員返信 ― replyAll(), reply()
○138[4-8] メール全員返信の下書き作成 ― createDraftReplyAll(), createDraftReply()
●スレッド
○139[4-9] スレッド(メッセージ)の検索 ― search()
○140[4-10] スレッドのパーマリンク取得 ― getPermalink()
○141[4-11] IDからスレッドの取得 ― getThreadById()
●共通
○142[4-12] スレッド/メッセージIDの取得 ― getId()
●メッセージ
○143[4-13] 単一スレッドからメッセージ取得 ― getMessagesForThread(), getMessages()
○144[4-14] 複数スレッドからメッセージ取得 ― getMessagesForThreads()
○145[4-15] IDからメッセージ取得 ― getMessageById()
○146[4-16] メッセージの受信日時取得 ― getDate()
○147[4-17] メッセージの差出人取得 ― getFrom()
○148[4-18] メッセージの件名取得 ― getSubject()
○149[4-19] メッセージの本文取得(HTML形式) ― getBody()
○150[4-20] メッセージの本文取得(テキスト形式) ― getPlainBody()
○151[4-21] メッセージのCc取得 ― getCc()
○152[4-22] メッセージのBcc取得 ― getBcc(), getTo()
○153[4-23] メッセージの添付ファイル取得 ― getAttachments()
○154[4-24] メッセージのヘッダー取得 ― getHeader()
■Chapter 5 Google Drive
●Driveサービス
○155[5-1] DriveAppサービスの理解 ― DriveAppクラス, Folderクラス, Fileクラス, FolderIteratorクラス, FileIteratorクラス
●イテレータ
○156[5-2] フォルダ/ファイルの存在確認 ― hasNext()
○157[5-3] フォルダ/ファイルの取得 ― next()
●フォルダ
○158[5-4] IDからフォルダ取得 ― getFolderById()
○159[5-5] ルートフォルダの取得 ― getRootFolder()
○160[5-6] 全フォルダの取得 ― getFolders()
○161[5-7] 名前からフォルダ取得 ― getFoldersByName()
○162[5-8] 検索条件と一致するフォルダ取得 ― searchFolders(params)
○163[5-9] 親フォルダの取得 ― getParents()
○164[5-10] フォルダの新規作成 ― createFolder()
●ファイル
○165[5-11] IDからファイル取得 ― getFileById()
○166[5-12] 全ファイルの取得 ― getFiles()
○167[5-13] 名前からファイル取得 ― getFilesByName()
○168[5-14] 検索条件と一致するファイル取得 ― searchFiles(params)
○169[5-15] MIMEタイプからファイル取得 ― getFilesByType(), MimeType
○170[5-16] ファイルの新規作成 ― createFile()
○171[5-17] ファイルのコピー ― makeCopy()
○172[5-18] ファイルのMIMEタイプ取得 ― getMimeType()
●共通
○173[5-19] フォルダ/ファイルの削除 ― setTrashed()
○174[5-20] フォルダ/ファイルの移動 ― moveTo()
○175[5-21] フォルダ/ファイルの名前取得 ― getName()
○176[5-22] フォルダ/ファイルのURL取得 ― getUrl()
○177[5-23] フォルダ/ファイルの作成日時取得 ― getDateCreated()
○178[5-24] フォルダ/ファイルの最終更新日時取得 ― getLastUpdated()
○179[5-25] フォルダ/ファイルのID取得 ― getId()
○180[5-26] フォルダ/ファイルの名前設定 ― setName()
■Chapter 6 Google Calendar
●Calendarサービス
○181[6-1] Calendarサービスの理解 ― CalendarAppクラス, Calendarクラス, CalendarEventクラス, EventGuestクラス
●共通
○182[6-2] カレンダー/カレンダーイベントのID取得 ― getId()
○183[6-3] カレンダー/カレンダーイベントのカラー取得/設定 ― setColor(), getColor(), Color
●カレンダー
○184[6-4] デフォルトカレンダーの取得 ― getDefaultCalendar()
○185[6-5] IDからカレンダー取得 ― getCalendarById()
○186[6-6] 名前からカレンダー取得 ― getCalendarsByName()
○187[6-7] 登録されたカレンダーの取得 ― getAllCalendars()
○188[6-8] 所有カレンダーの取得 ― getAllOwnedCalendars()
○189[6-9] カレンダーの名前取得 ― getName()
●カレンダーイベント
○190[6-10] カレンダーイベントの取得 ― getEvents(), GuestStatus
○191[6-11] IDからカレンダーイベント取得 ― getEventById()
○192[6-12] 特定日のカレンダーイベント取得 ― getEventsForDay()
○193[6-13] カレンダーイベントの作成者取得 ― getCreators()
○194[6-14] カレンダーイベントのタイトル取得 ― getTitle()
○195[6-15] カレンダーイベントの開始日時取得 ― getStartTime()
○196[6-16] カレンダーイベントの終了日時取得 ― getEndTime()
○197[6-17] カレンダーイベントの場所取得 ― getLocation()
○198[6-18] カレンダーイベントの説明取得 ― getDescription()
○199[6-19] カレンダーイベントの終日判定 ― isAllDayEvent()
○200[6-20] カレンダーイベントの新規作成 ― createEvent()
○201[6-21] 終日カレンダーイベントの新規登録 ― createAllDayEvent()
○202[6-22] カレンダーイベントの削除 ― deleteEvent()
○203[6-23] カレンダーイベントのタイトル設定 ― setTitle()
○204[6-24] カレンダーイベントの開始/終了日時設定 ― setTime()
○205[6-25] カレンダーイベントの場所設定 ― setLocation()
○206[6-26] カレンダーイベントの説明設定 ― setDescription()
○207[6-27] カレンダーイベントのリマインダー削除 ― removeAllReminders()
○208[6-28] カレンダーイベントのリマインダー設定 ― addPopupReminder()
○209[6-29] カレンダーイベントのゲストリスト表示設定 ― setGuestsCanSeeGuests()
○210[6-30] カレンダーイベントのタグ(key, vale)設定 ― setTag()
○211[6-31] カレンダーイベントタグのkeyからvalue削除 ― deleteTag()
○212[6-32] カレンダーイベントタグのkeyからvalue取得 ― getTag()
○213[6-33] カレンダーイベントタグのkey全取得 ― getAllTagKeys()
●ゲスト
○214[6-34] カレンダーイベントのゲスト取得 ― getGuestList()
○215[6-35] ゲストのステータス取得 ― getGuestStatus()
○216[6-36] ゲストのメールアドレス取得 ― getEmail()
○217[6-37] カレンダーイベントへのゲスト追加 ― addGuest()
○218[6-38] カレンダーイベントのゲスト削除 ― removeGuest()
■Chapter 7 Google Document
●Documentサービス
○219[7-1] Documentサービスの理解 ― DocumentAppクラス, Documentクラス, Bodyクラス
●ドキュメント
○220[7-2] ドキュメントの新規作成 ― create()
○221[7-3] アクティブドキュメントの取得 ― getActiveDocument()
○222[7-4] IDからドキュメント取得 ― openById()
○223[7-5] URLからドキュメント取得 ― openByUrl()
○224[7-6] ドキュメントのタイトル取得 ― getName()
○225[7-7] ドキュメントの本文領域取得 ― getBody()
○226[7-8] 本文領域からテキスト取得 ― getText()
■Chapter 8 Google Slides
●Slidesサービス
○227[8-1] Slidesサービスの理解 ― SlidesAppクラス, Presentationクラス, Slideクラス, Shapeクラス
●プレゼンテーション
○228[8-2] プレゼンテーションの新規作成 ― create()
○229[8-3] アクティブプレゼンテーションの取得 ― getActivePresentation()
○230[8-4] IDからプレゼンテーション取得 ― openById()
○231[8-5] URLからプレゼンテーション取得 ― openByUrl()
○232[8-6] プレゼンテーションの名前取得 ― getName()
○233[8-7] プレゼンテーションの名前設定 ― setName()
○234[8-8] プレゼンテーションのID取得 ― getId()
○235[8-9] プレゼンテーションのURL取得 ― getUrl()
●スライド
○236[8-10] スライドの全取得 ― getSlides()
○237[8-11] IDからスライド取得 ― getSlideById()
○238[8-12] スライドの更新 ― refreshSlide()
○239[8-13] スライドの追加 ― appendSlide(), PredefinedLayout, SlideLinkingMode
●テキスト/グラフ/画像
○240[8-14] スライド内の文字列置換 ― replaceAllText()
○241[8-15] スライドの画像取得 ― getImages()
○242[8-16] スライドのシェイプ取得 ― getShapes()
○243[8-17] スライドのテキスト取得 ― getText(), asString()
○244[8-18] スライドのグラフ取得 ― getSheetsCharts()
○245[8-19] グラフの更新 ― refresh()
○246[8-20] スライドへの画像貼り付け ― insertImage(), getSourceUrl()
■Chapter 9 Google Forms
●Formsサービス
○247[9-1] Formsサービスの理解 ― FormAppクラス, Formクラス, Itemクラス, FormResponseクラス, ItemResponseクラス
●フォーム
○248[9-2] フォームの新規作成 ― create()
○249[9-3] フォームのタイトル取得 ― getTitle()
○250[9-4] アクティブフォームの取得 ― getActiveForm()
○251[9-5] IDからフォーム取得 ― openById()
○252[9-6] URLからフォーム取得 ― openByUrl()
○253[9-7] フォームのURL取得 ― getEditUrl(), getSummaryUrl(), getPublishedUrl()
○254[9-8] フォームのタイトル設定 ― setTitle()
○255[9-9] フォームの説明設定 ― setDescription()
○256[9-10] フォームのメールアドレス収集可否設定 ― setCollectEmail()
○257[9-11] フォームのログイン要否設定 ― setRequireLogin()
●設問
○258[9-12] (入力回答)一行テキストの追加 ― addTextItem()
○259[9-13] (入力回答)複数行テキストの追加 ― addParagraphTextItem()
○260[9-14] (選択回答)ラジオボタンの追加 ― addMultipleChoiceItem()
○261[9-15] (選択回答)チェックボックスの追加 ― addCheckboxItem()
○262[9-16] (選択回答)ドロップダウンリストの設定 ― addListItem()
○263[9-17] 質問の設定 ― setTitle()
○264[9-18] 質問の説明設定 ― setHelpText()
○265[9-19] 質問の回答必須/任意設定 ― setRequired()
○266[9-20] 回答選択肢の設定 ― setChoiceValues()
○267[9-21] 回答選択肢にその他を追加 ― showOtherOption()
●レスポンス
○268[9-22] フォームの回答取得 ― getResponses()
○269[9-23] タイムスタンプの取得 ― getTimestamp()
○270[9-24] メールアドレスの取得 ― getRespondentEmail()
○271[9-25] アイテムレスポンスの取得 ― getItemResponses()
○272[9-26] 質問の取得 ― getItem(), getTitle()
○273[9-27] アイテムの回答取得 ― getResponse()
■Chapter 10 UI
●ダイアログボックス
○274[10-1] ボタン選択型のダイアログボックス表示 ― Browserクラス, Uiクラス, msgBox(), getUi(), alert(), ButtonSet
○275[10-2] テキスト入力型のダイアログボックス表示 ― inputBox(), prompt(), ButtonSet
○276[10-3] 選択ボタンの取得 ― getSelectedButton()
○277[10-4] 入力テキストの取得 ― getResponseText()
●カスタムメニュー
○278[10-5] カスタムメニューの作成 ― createMenu(), addItem(), addToUi()
■Chapter 11 Web
●API
○279[11-1] HTTPレスポンスの取得 ― UrlFetchAppクラス, fetch()
○280[11-2] ヘッダー情報の取得 ― getHeaders()
○281[11-3] ステータスコードの取得 ― getResponseCode()
○282[11-4] コンテンツテキストの取得 ― getContentText()
●HTML
○283[11-5] 静的HTMLの生成 ― createHtmlOutput(), createHtmlOutputFromFile(), append()
○284[11-6] 動的HTMLの生成 ― createTemplate(), createTemplateFromFile(), evaluate(), getCode()
○285[11-7] HTMLメールの本文取得 ― getContent()
○286[11-8] HTMLのダイアログボックス表示 ― showModalDialog(), showModelessDialog()
○287[11-9] HTMLのサイドバー表示 ― showSidebar()
■Chapter 12 Script
●時間
○288[12-1] スクリプト実行時間の取得 ― consoleクラス, time(), timeEnd()
○289[12-2] スクリプトの一時停止/遅延 ― Utilitiesクラス, sleep()
●排他制御
○290[12-3] ロックの取得(排他制御①) ― LockServiceクラス, getDocumentLock(), getUserLock(), getScriptLock()
○291[12-4] ロックの有効化(排他制御②) ― tryLock(), waitLock(), hasLock()
○292[12-5] ロックの解除(排他制御③) ― releaseLock()
●トリガー
○293[12-6] 時間ベースのトリガー新規作成 ― ScriptAppクラス, newTrigger(), timeBased()
○294[12-7] 時間ベーストリガーの起動日時設定 ― at()
○295[12-8] トリガーの有効化 ― create()
○296[12-9] 全トリガーの取得 ― getProjectTriggers()
○297[12-10] 関数名の取得 ― getHandlerFunction()
○298[12-11] トリガーの削除 ― deleteTrigger()
■Chapter 13 Blob
●ファイル
○299[13-1] ファイルの取得 ― getBlob(), getAs()
○300[13-2] ファイルの名前取得 ― getName()
○301[13-3] ファイルの名前設定 ― setName()
○302[13-4] ファイルのコンテンツタイプ取得 ― getContentType()
○303[13-5] ファイルの新規作成 ― newBlob()
■Chapter 14 Properties
●プロパティストア
○304[14-1] プロパティストアの取得 ― PropertiesServiceクラス, getScriptProperties(), getUserProperties(), getDocumentProperties()
○305[14-2] プロパティストアへのプロパティ(key, value)格納 ― setProperty(), setProperties()
○306[14-3] プロパティストアのkey全取得 ― getKeys()
○307[14-4] プロパティストアのkeyからvalue取得 ― getProperty()
○308[14-5] プロパティストアのプロパティ全取得 ― getProperties()
○309[14-6] プロパティストアのkeyからプロパティ削除 ― deleteProperty()
○310[14-7] プロパティストアのプロパティ全削除 ― deleteAllProperties()
■Chapter 15 日付・文字列・数値
●日付
○311[15-1] 現在日時の取得 ― new Date()
○312[15-2] 特定日時の取得 ― new Date()
○313[15-3] 日付の表示形式設定 ― Utilitiesクラス, formatDate(), toString(), toLocaleString(), toDateString(), toLocaleDateString(), toTimeString(), toLocaleTimeString()
○314[15-4] 年の取得/設定 ― getFullYear(), setFullYear()
○315[15-5] 月の取得/設定 ― getMonth(), setMonth()
○316[15-6] 日の取得/設定 ― getDate(), setDate()
○317[15-7] 曜日の取得 ― getDay()
●文字列
○318[15-8] 文字列の位置取得 ― indexOf()
○319[15-9] 文字列の有無判定 ― includes()
○320[15-10] 検索文字列での開始判定 ― startsWith()
○321[15-11] 検索文字列での終了判定 ― endsWith()
○322[15-12] 特定文字で文字列の長さ調整 ― padStart()
○323[15-13] 文字列を区切り文字で分割 ― split()
○324[15-14] 文字列の切り取り ― slice(), substring(), substr()
○325[15-15] 数値の文字列変換 ― toString(), String()
●正規表現
○326[15-16] 正規表現の利用 ― new RegEx(), /~/
○327[15-17] 文字列の置換 ― replace(), replaceAll()
○328[15-18] 文字列の一致判定 ― test()
○329[15-19] 一致文字列の取得 ― match(), matchAll(), exec()
○330[15-20] 一致文字列の位置取得 ― search()
●数値
○331[15-21] 有理数の判定 ― isFinite()
○332[15-22] 整数の判定 ― isInteger()
○333[15-23] 文字列の数値変換 ― parseInt(), parseFloat(), Number()
○334[15-24] 小数点の切り上げ ― ceil()
○335[15-25] 小数点の切り捨て ― floor()
○336[15-26] 小数点の四捨五入 ― round()
■Chapter 16 配列 ― 配列
○337[16-1] 配列メソッド ― Arrayクラス
○338[16-2] 要素数の取得 ― length
●アクセサメソッド
○339[16-3] 配列の結合 ― concat()
○340[16-4] 二次元配列を一次元配列に変更(フラット化) ― flat()
○341[16-5] 要素を特定文字で結合 ― join()
○342[16-6] 文字列の位置取得 ― indexOf()
○343[16-7] 文字列の有無判定 ― includes()
●変更メソッド
○344[16-8] 末尾への要素追加 ― push()
○345[16-9] 先頭への要素追加 ― unshift()
○346[16-10] 末尾から要素の抜き取り ― pop()
○347[16-11] 先頭から要素の抜き取り ― shift()
○348[16-12] 要素の反転 ― reverse()
●反復メソッド
○349[16-13] (配列各要素)コールバック実行 ※ 戻り値無し ― forEach()
○350[16-14] (配列各要素)コールバック実行 ※ 戻り値有り ― map()
○351[16-15] (配列各要素)すべての要素が条件を満たすか判定 ― every()
○352[16-16] (配列各要素)最低1つの要素が条件を満たすか判定 ― some()
○353[16-17] (配列各要素)条件を満たす要素で新しい配列を生成 ― filter(), find()
○354[16-18] (配列各要素)ユニークな値の生成 ― reduce(), reduceRight()
著者情報
清水亮
【清水 亮】
大学卒業後、日本電信電話株式会社に入社。その後ソフトバンクコマース(当時)へ転職。ソフトバンクグループ会社統合を経て、ソフトバンク株式会社 カスタマーケアオペレーション本部 営業推進統括部 統括部長(現職)として全国約3,500店舗のソフトバンクおよびワイモバイルショップの店頭システムの企画・設計を行う。また、所属組織のコールセンターにおけるRPA導入/推進業務に従事。SBモバイルサービス事業開発本部長を兼務し、RPA 推進および販売を行う。
枡田健吾
【枡田 健吾】
大学卒業後、イー・アクセス株式会社へ入社。EMOBILEブランドの携帯電話事業立ち上げに参画。2013 年1月経営統合によりソフトバンク株式会社へ入社。同社においてコンシューマ部門のシステム企画部門を経て、2018 年3月より所属本部のRPA 推進責任者としてRPA導入・運用を担当。2018 年11月、同子会社のSBモバイルサービス株式会社へ兼務出向を行い、RPAのノウハウを導入支援・研修サービスとして販売する新規事業の立ち上げを行う。
近江幸吉
【近江 幸吉】
大学卒業後、ソフトバンク株式会社に入社。組織の業務効率向上をミッションとして日々活動中。全体管理、ツール導入、開発、技術支援、仕組み構築など幅広くカバー。主はRPA、プログラミング、SaaS。ここ最近は、各部署自走のための技術フォローに注力。一方、社外では知見を活かして様々なイベントに登壇したり、IT全般に関わるコンサルティングを実施。
佐藤香奈
【佐藤 香奈】
大学卒業後、メガバンク、コンサルティング会社、SBモバイルサービス株式会社を経てソフトバンク株式会社へ転職。 前職でのソフトバンクショップの店舗システム設計や運営、コールセンターの財務管理に係る業務効率化の経験を活かし、 現在はソフトバンク社内のRPA 推進を担当。勉強会や研修を開催し、RPA育成にも注力している。
一政汐里
【一政 汐里】
大学卒業後、ソフトバンク株式会社に入社し、法人営業に従事。 その後、教育系JVにて学校へのiPad導入支援やアプリの企画職を経て、2018 年より現在のRPA事業に携わる。現在はGAS、RPA、SaaSを用いた業務効率化の実現や、社内のGAS 開発者を育成している。