本記事はノーコードアプリ開発について全く知らなかった管理人が独学で勉強し、ここ大事!と感じた部分を記事にまとめています。
本ブログでは新UI画面で内容をまとめています。
新旧画面への切り替えは、下図を参考に該当アイコンをクリックしてください(^^)

まずはじめに
- AppSheetのアプリ開発をするうえで知っておきたい関数が知りたい人
- 送信メールにAppSheetのView画面を貼り付けて送信したい人
いつもブログをご覧いただきありがとうございます!
これまで当ブログでは、AppSheetでアプリ開発をする上で特に重要だと私が感じた関数を、個別の記事で詳しく解説してきました。
- テキスト関数(Text expressions):文字列を返す関数
- 判別関数(Yes/No expressions):フィルター条件に使える関数
- リスト関数(List expressions):リストを返す関数
- 条件関数(Conditional expressions):条件分岐を与える関数
- 計算関数(Mass expressions):数値を計算する関数
- Deeplink関数:画面遷移をする関数
今回は、それらの関数解説記事をぎゅっと一つにまとめた、まさに「総まとめ」の記事です。
また、既に紹介した関数の分類には直接属さないものの、知っておくと必ず役立つ隠れた名関数もいくつかあります。
この記事ではまず最初にそれらをまとめてご紹介し、その後に「もし私がAppSheetの関数をゼロから勉強し直すとしたら、どの順番で学習を進めるか?」という、私個人の独断と偏見による優先順位を付けたいと思います。
それでは勉強していきましょう!
カテゴリー分類に属さない便利な関数

ここでは、これまでご紹介してきた関数の主要なカテゴリーには直接分類されないものの、AppSheetでアプリ開発をする上で確実に覚えておくべきだと私が考える関数群をご紹介します。
この中で、特に絶対に知っておかなければならない関数は、ANY()関数です!
その他の関数も、いざという時に役立つ場面が多いので、ぜひ頭の片隅に入れておきましょう。
ANY()関数
ANY()関数は、リストから一つの値を取り出す際に使用する、非常にシンプルながらも便利な関数です。
ANY(list)
- 括弧
()
の中にリストを渡します。 - リストを構成する値のデータタイプは不問です(Text型、Number型など、どのタイプでも構いません)。
- 関数は、送られたリストのデータタイプと同じタイプの値を返します。

返り値の特性:
ANY()関数の返り値は、括弧に渡されたリストの最前列(一番左)にある値です。
つまり、リストに複数の値が含まれている場合でも、常にそのリストの最初の要素が戻り値として返されます。
活用例:
リストを返す関数の代表であるSELECT()関数を引数に渡すことも可能です。
例えば、特定の条件で絞り込んだ結果が必ず一つになる場合に、その唯一の値を確定させたい時にANY(SELECT( . . . ))のように使います。
使い方は非常にシンプルなので、忘れずに覚えておきましょう!
LOOKUP()関数
LOOKUP()関数は、特定の条件に合致する値を別のテーブルから検索して取得する際に使用します。
これは、ANY(SELECT())関数の検索条件を非常に簡素化したような関数だと考えると分かりやすいでしょう。
LOOKUP(value, dataset, column, return-column)
LOOKUP()
関数には4つの引数が必要です。

value
(第一引数): 検索したい値を指定します。この値が、後述するcolumn
(第三引数)の中から探し出されます。dataset
(第二引数): 検索対象となるテーブル名またはスライス名を指定します。column
(第三引数): 第二引数で指定したテーブル(またはスライス)内に存在するカラム名を指定します。value
(第一引数)がこのカラム内で検索されます。return-column
(第四引数):value
(第一引数)とcolumn
(第三引数)の値が合致した場合に、返す値が存在するカラム名を指定します。
特徴と使い分け:
LOOKUP()
関数は、引数が直感的で非常に使いやすい関数です。特定のキーに基づいて単一の値を引き出すシンプルな検索においては非常に強力です。
しかし、LOOKUP()
関数は第一引数に複雑な検索条件を指定することができません。
例えば、「AかつBの条件を満たす」といった複数の条件や、動的な条件を組み合わせたい場合は、LOOKUP()
関数では対応しきれません。
そのような場面では、迷わずANY(SELECT())
関数を使用するようにしましょう。
HYPERLINK()関数
HYPERLINK()
関数は、指定したURLへのリンクを作成し、表示させるテキストをカスタマイズできる関数です。
HYPERLINK(url, text)
url
(第一引数): リンク先となるウェブサイトのURLを指定します。text
(第二引数): アプリ上に表示される文字列を指定します。この文字列をクリックすると、url
で指定したページに遷移します。
注意点: どちらの引数もダブルクォーテーション "
で囲む必要があります。
補足:
今回この関数をご紹介しましたが、当ブログの別の記事で解説している方法の方が、より分かりやすく応用も効くため、当ブログの読者の方にはそちらをおすすめしています。
Automationのメールにリンクを貼り付ける方法をまとめた記事です(^^)
【2パターンでOK!】メールにURLリンクを挿入する方法
一応、このようなリンク生成関数もあったな、と覚えておいていただけると良いでしょう。
INPUT()関数
INPUT()
は、アクションやデータ保存時にポップアップを表示し、ユーザーにデータ入力を促すための機能です。
以前は関数として引数を渡していましたが、β版以降の使用方法が変わり、関数ではなく[_INPUT].[カラム名]
という形式でアクセスするようになりました。
イメージとしてはこんな感じ:

この機能は、ユーザーが特定の操作を行った際に、その場で追加情報を入力してもらう必要がある場合に非常に有効です。
例えば、データの変更理由を入力させたり、アクションの実行前に確認事項を促したりするのに使えます。

INPUT
を使ったアプリ開発については、別の記事で詳しくまとめています
終業時間を記録するアプリの作り方を学べます(^^)
【実用レベル】AppSheetで出勤アプリを作ってみよう
書類の確認履歴を残すアプリの作り方を学べます(^^)
【超実践的!】電子印承認アプリの作りかた
【超重要!】AppSheet関数 学習の優先度ロードマップ(独断と偏見)
さて、ここからは、もし私がAppSheetの関数をゼロから勉強し直すとしたら、どのような順番で学習を進めるか?という、私個人のアプリ開発における独断と偏見に基づいた優先順位をまとめたいと思います。
あくまで参考程度にご覧ください!
まず最初に学習すべきは、やはりSELECT()
関数です。
当ブログ記事でも常に人気の高い関数であり、これを使えるようになるかどうかで、AppSheetでのアプリ開発の幅が「天と地ほどの差がある」と言われても納得するほど、非常に重要な関数です。
SELECT()
関数は、特定の条件に基づいてデータを抽出し、リストとして返す AppSheet の核となる機能です。
データの絞り込み、関連情報の取得、依存型ドロップダウンリストの作成など、あらゆる場面でその汎用性を発揮します。
また、この記事でも紹介したANY()
関数とSELECT()
関数は非常に相性が良く、セットで使えるようになることで、検索した単一の値を効率的に取得できるようになります。
この二つは、ぜひ合わせてマスターしておきましょう!
次に学習すべきは、入力が「はい」か「いいえ」、つまりTRUE
またはFALSE
を返す関数群です。
これらの関数は、AppSheetアプリの挙動を細かく制御するために、非常に多用されます。
具体的には、以下のようなアプリの「核」となる設定箇所でこれらの関数が活躍します。
- カラムの表示/非表示(
Show If
) - カラムの入力制限(
Valid If
) - カラムの編集可否(
Editable
) - View(画面)の表示/非表示アクションボタンの表示/非表示(
Only if this condition is true
) - スライス(データ抽出)のフィルター条件式
これらの設定を自由自在に操れるようになると、ユーザーの操作に応じてアプリの見た目や動きが変わり、何よりもアプリ開発が格段に楽しくなってきます。
AND()
、OR()
、ISBLANK()
、IN()
などの関数がこのカテゴリーに属します。
これらを組み合わせることで、複雑な条件も柔軟に設定できるようになります。
次に学習すべきは、テキスト関数です。正直なところ、一見するとかなり地味な関数群に思えるかもしれません。
しかし、これらは知っていると要所で非常に役立つ、縁の下の力持ちのような存在です。
例えば、以下のような場面でその真価を発揮します。
- グラフのラベル作成やスライスのフィルター条件式に役立つ
TEXT()
関数 Valid if
の入力制限に役立つLEFT()
関数、RIGHT()
関数、LEN()
関数
これらの関数を知っていると、「こんなこと、できるのかな?」と思っていたことが、あっさりと実現できてしまうことが多いですね。文字列の整形や一部抽出など、データを見やすくしたり、特定の条件で絞り込んだりする際に、その威力を発揮します。
次に学習すべきは、DEEPLINK()
関数です。
この関数は、引数の渡し方が少し独特で、AppSheetの学習を始めたばかりの人にとっては理解が難しいかもしれません。
しかし、ご安心ください!
これまでの「STEP.1〜3」で、SELECT()
関数や判別関数、テキスト関数をしっかり学習してきた皆さんなら、もうこのレベルの関数についても十分に理解できるはずです。
DEEPLINK()
関数は、知らなくてもアプリ開発自体は可能です。
しかし、これを知っているのと知らないのとでは、ユーザーインターフェース(UI)の高いアプリを作成できるかどうかに大きな差が出てきます。
特定の条件で別の画面へ遷移させたり、外部のウェブサイトや別のアプリを起動させたりと、アプリの操作性を格段に向上させることができます。
ぜひ、ここまでの学習を終えたら、DEEPLINK()
関数にも挑戦してみてください。
最後に挙げるのは、条件分岐を構築できるIF()
関数とIFS()
関数です。
これらの関数は、AppSheetアプリ内で「もしAという条件が満たされたら、Bという処理を行い、そうでなければCを行う」といった、複雑なロジックを実装するために不可欠です。
AppSheetには他にも条件関数が存在しますが、このIF()
関数とIFS()
関数を覚えておけば、ほとんどの場合で困ることはありません。 アプリの挙動をきめ細かく制御し、ユーザーの操作やデータの内容に応じて柔軟に対応させたい場合に、これらの関数が活躍します。
まとめ
今回は、AppSheetでアプリ開発を進める上で、私が考える「学習すべき関数の優先順位」と、それぞれの関数のポイントをまとめてご紹介しました。
「リスト関数(FILTER()
、LIST()
など)や計算関数(SUM()
、COUNT()
など)は必修ではないのか?」と思われる方もいるかもしれません。
もちろん、これらも非常に重要な関数ですが、今回のランキングでは、アプリのロジックやUIを大きく左右する、より汎用性の高い関数群を優先してピックアップしました。
「いや、よく使う関数は全部知っておきたい!」という意欲的な方は、ぜひ以下の参考記事もチェックしてみてください。
これまでに解説してきたステップ1からステップ5までの内容と、それぞれの関連記事をしっかり理解していただければ、関数の使い方で困ることはほとんどなくなるはずです。

それくらい気合を入れて記事をまとめていますから!
関数の使い方さえマスターしてしまえば、あとはそれをどう組み合わせて、どのようなロジックを構築するかを考えるだけです。
皆さんもAppSheet関数を使いこなして、理想のアプリ開発を楽しみましょう!
記事内容について何かありましたらページ下にあるコメント欄からコメントをお願いします。
わかりにくかった部分や間違った情報などご指摘いただけると嬉しいです!
勉強お疲れさまでした(^^)