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

まずはじめに
- AppSheetでよく使うYes/Noを返す関数を知りたい人
- AppSheetがYes/Noを求めている入力箇所が分かる
- 関数の返り値がYes/Noである代表的な関数が分かる
今回の記事内容は、返り値がYes/Noタイプの関数です。
この記事で説明する関数は、入力されているデータの情報ではなく
該当する(Yes)か該当しないか(No)
を返す関数です。具体的な方法としては
- 等号や不等号を用いて左辺と右辺を判定する
- 対象のカラムに値が入力されているかの判定をする
- 検索値と検索ワードを関数の引数に渡して判定する
この3パターンでおおよそ全てに対応できます。
使い方も癖がないものが多いので、何度も使っていると自然と使えるようになると思います(^^)
それでは勉強していきましょう!
Yes/No関数を使う箇所

最初にYes/Noの返り値を求められる場面を把握しておきましょう。
代表的な入力箇所をピックアップしました(^^)

訳:このカラムをアプリで表示させますか?表示させる条件を指定することができます
表示させる条件を問われているので〇〇という条件を満たすか満たさないか、つまりYes/Noで答えることができる関数を入力する必要があります。

訳:このカラムに入力される値を制限しますか?
ここでは入力値の制限をすることが出来るので、予め登録してある値との整合を問わせることが可能です。Yes/Noで答えられる条件式、もしくはリストを指定することも可能です。

訳:テーブルの列情報がどんな状態の時に、このアクションを実行可能にしますか?
どんな状態の時と訊かれているので、〇〇の状態の時とYes/Noで答える必要があります。
上で紹介したのは代表的な入力箇所ですが、他にも入力する箇所はたくさんあります。
大事なのは、今から関数を入力する箇所はどういった返り値を求めているのか?を考えることです(^^)

上の写真のように、関数を入力する際にAppSheetが求めている返り値がわかります。
ここで判別して入力する関数を見定めてください(^^)
等号・不等号での判定

最も簡単にYes/Noの値を返す方法として等号・不等号があります。
記号 | 使用例 | 返り値 |
---|---|---|
= | [カラム] = A | [カラム]の値がAの時 → TRUE [カラム]の値がAではない時 → FALSE |
<> | [カラム] < > A | [カラム]の値がAの時 → FALSE [カラム]の値がAではない時 → TRUE |
> | [カラム] > 100 | [カラム]の値が100より大きい時 → TRUE [カラム]の値が100以下の時 → FALSE |
>= | [カラム] > = 100 | [カラム]の値が100以上の時 → TRUE [カラム]の値が100より小さい時 → FALSE |
< | [カラム] < 100 | [カラム]の値が100より小さい時 → TRUE [カラム]の値が100以上の時 → FALSE |
<= | [カラム] < = 100 | [カラム]の値が100以下の時 → TRUE [カラム]の値が100より大きい時 → FALSE |
単純な入力値ですが、確実にYes/Noを返してくれるのでまず最初に検討をしましょう。
関数の勉強をし始めるとつい難しく考えがちですが、こういった基本が大事です。
覚えた関数を無駄に使いたがる・・・あるあるです!笑
AND()関数

AND()関数に値を送った時の返り値を表にまとめました(^^)
関数の入力値 | 返り値 |
---|---|
AND(TRUE条件,FALSE条件) | FALSE |
AND(FALSE条件,TRUE条件) | FALSE |
AND(ISNOTBLANK([ステータス]),[ステータス] = “完了”) | [ステータス]が空白ではなく かつその値が”完了”の時 TRUE それ以外のとき FALSE |
AND(LEN([_THIS]) > = 10,CONTAINS([_THIS],”@gmail.com”)) ※[_THIS]は編集(入力している)カラム | 10文字以上かつ”@gmail.com”が 含まれる時 TRUE 含まれない時 FALSE |
使い方のイメージはついたでしょうか?
AND()関数は括弧内の条件を“かつ”で繋げる門番みたいなイメージですかね?
全ての門番を突破(条件を満たした時)に褒美を貰える(TRUEを返す) みたいな。
関数に送る条件次第で、TRUEとFALSEを自在にコントロールできるので、使う機会が多い関数ですね(^^)
OR()関数

関数の引数の渡し方や考え方はAND()関数と全く同じです。
OR()関数に値を送った時の返り値を表にまとめました(^^)
関数の入力値 | 返り値 |
---|---|
OR(FALSE条件,FALSE条件) | FALSE |
OR(FALSE条件,TRUE条件) | TRUE |
OR([_THIS] < 0,[_THIS] > 2) | [_THIS]カラムの値が0より小さい、または2より大きい時 TRUE [_THIS]カラムの値が0より大きく2より小さい時 FALSE |
OR(AND( (TIMENOW() >= “8:00 AM”),(TIMENOW() < “5:00 PM”)), WEEKDAY(TODAY())=”Saturday”, WEEKDAY(TODAY())=”Sunday”) | 午前8時から午後5時までの間 または土曜日か日曜日の時 TRUE それ以外の時間帯の時 FALSE |
注意点して1つの条件さえ満たせればTrueを返すので、誰でも満たしてしまうような条件式を設定すると全てTRUEが返ってきます。
これは結構やらかしますので、特にこの関数の動作検証は忘れずに!
NOT()関数

NOT()関数はそれ単体で使うことはない関数です。
括弧の中に条件式を入力し、その条件式の結果と反対の結果を返します。
覚えておくと役に立つことがあるので、ぜひ覚えておきましょう(^^)
ISBLANK()とISNOTBLANK()関数
ISBLANK()関数とISNOTBLANK()関数の使い方は同じなので一緒にまとめます。
対象のカラムが空(ブランク)の時にTRUEを返し、データが入力されたらFALSEを返します。
対象のカラムが空(ブランク)の時にFALSEを返し、データが入力されたらTRUEを返します。

ISBLANK()関数とISNOTBLANK()関数は全く逆の返り値が返ってきます。つまり、NOT(ISBLANK())関数 = ISNOTBLANK()関数が成立します(^^)
CONTAINS()関数

CONTAINS()関数に値を送った時の返り値を表にまとめました(^^)
関数の入力値 | 返り値 |
---|---|
CONTAINS(“123″,”1”) | TRUE |
CONTAINS(“123″,”4”) | FALSE |
CONTAINS(“I’m tired”,”Red”) | TRUE |
CONTAINS([email],”@”) | [email]に@が含まれている場合 TRUE @が含まれない場合 FALSE |
CONTAINS([_THIS],”-“) | [_THIS]に – が含まれている場合 TRUE – が含まれない場合 FALSE |
CONTAINS()関数はテキスト型の検索値を第一引数に指定する必要があります。
王道パターンとして、[_THIS]カラムとのセットで覚えておきましょう(^^)
この場合は、今入力しているカラムに〇〇という文字列が含まれているか? のような使い方です。
まとめると、
- 部分一致検索を行う
- 主に文字列の中に特定の単語やフレーズが含まれているかを確認するために使用
また、大文字と小文字の区別がつかない点も注意点として覚えておきましょう。
IN()関数

CONTAINS()関数と使い方は似ていますが、こちらは引数にリストを指定できるので複数検索が可能です。
IN()関数に値を送った時の返り値を表にまとめました(^^)
関数の入力値 | 返り値 |
---|---|
IN(“1”,LIST(1,2,3)) | TRUE |
IN(“4”,LIST(1,2,3)) | FALSE |
IN(“@”,LIST([email])) | [email]カラムに@がある場合 TRUE @がない場合 FALSE |
IN(USEREMAIL(),アプリユーザー[email]) | ログインユーザーのメールアドレスが アプリユーザーテーブルの[email]にある場合 TRUE [email]にない場合 FALSE |
IN()関数は、リスト型の検索値を第二引数に指定する必要があります。
まとめると、
- 完全一致検索を行う
- リストやテーブル内に特定の値が含まれているかを確認するために使用
- 検索値(第一引数)がリスト(第二引数)にある場合、TRUEを返す
この関数は、権限付与をするときによく使う関数なので覚えておきましょう(^^)
まとめ
Yes/No関数の中から私がよく使うものをピックアップしてまとめました。
Yes/Noを返す関数は
- 等号や不等号を用いて左辺と右辺を判定する
- 対象のカラムに値が入力されているかの判定をする
- 検索値と検索ワードを関数の引数に渡して判定する
この3つで判定するんだと覚えておくといいと思います。
アプリ開発において、編集や閲覧などの権限を付与するときに必ずこれらの関数が必要です。
本記事で紹介した関数は使い方も特別難しいものはありませんので、何度も関数を叩いてさくっと身につけてしまいましょう!
誰でも最初は初心者なので焦らず、ゆっくり基本を抑えていきましょう。
記事内容について何かありましたらページ下にあるコメント欄からコメントをお願いします。
わかりにくかった部分や間違った情報などご指摘いただけると嬉しいです!
勉強お疲れさまでした(^^)

AppSheetで覚えておきたい関数についてまとめています
やりたいことがあっさりと叶う可能性がある関数を知りたい人はこちら(^^)
【永久保存版】AppSheetで覚えておくべきText関数
AppSheetで重要な概念であるリストについて学べます(^^)
【永久保存版】AppSheetで覚えておくべきList関数