条件式 (ブール式) を作成する

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。私たちの目的は、このコンテンツがお客様の役に立つようにすることです。お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。簡単に参照できるように、こちらに英語の記事があります。

この記事では、条件式 (ブール式ともいう) の作成方法について説明します。条件式とは、true または false として評価された後、指定した条件を満たす結果を返す式です。条件式に関数を使用することにより、式の条件を満たしたかどうかに応じて処理を分けることもできます。たとえば、利幅が 10% 未満である売上高をすべて検索する式を作成し、これらの数値を赤で表示したり、値をメッセージで置き換えたりすることができます。

この記事の内容

条件式について

条件式を作成する

条件式の例

条件式について

条件式は、与えられたデータが特定の条件を満たすかどうかを調べて、その結果に応じた処理を行う式の一種です。たとえば、特定の開始日以降の日付値を想定し、その開始日より前の日付を入力しようとするとエラー メッセージが表示されるような式を作成できます。

基本的な構文と形式は他の式と同じであり、条件式だからといって特別な使い方があるわけではありません。

  • テーブルのフィールドの場合、フィールドの [入力規則] プロパティに式を追加できます。ユーザーは、このフィールドに値を入力するとき、指定された式の条件と一致する値を入力する必要があります。たとえば、日付/時刻型フィールドに「>=#1/1/1900#」という式が用いられている場合、ユーザーは、1900 年 1 月 1 日以降の値を入力する必要があります。

  • フォームのコントロールについては、コントロールのControl ソースまたは入力規則プロパティに式を追加できます。通常は、[入力規則] プロパティに条件式を追加し、値を計算する式をコントロールソースプロパティに追加します。たとえば、コントロールのValidaルールプロパティで、 > = #1/1/1900 # in を使用すると、ユーザーは無効な日付を入力できなくなります。[コントロールソース] プロパティでdate ()などの式を使用すると、現在の日付が既定値として表示されます。

  • クエリの場合、[フィールド] 行の空白のセルに条件式を追加したり、[抽出条件] 行で式を使用したりできます。[フィールド] 行で式を使用した場合、式の結果が、クエリ結果の列として表示されます。既存のフィールドに対する条件として式を使用すると、その式がフィルタとして機能し、クエリから返されるレコードが制限されます。

    たとえば、クエリの [フィールド] 行で、次の式を使用できます。 = IIf ([受注日] < = #04/01/2003 #、[受注日]、"4 月1日以降に入力された注文")。式は日付の抽出条件 (< = #04/01/2003 #) を指定します。クエリを実行すると、抽出条件に一致するすべての日付値が表示され、抽出条件を満たさない日付値は、"4 月1日以降に入力された注文" というメッセージに置き換えられます。このセクションの手順では、クエリに式を追加して、クエリでこの式を使用する方法について説明します。

    これに対して、クエリの [抽出条件] フィールドでこの式を使用すると、条件を満たす日付を含むレコードだけが返されます。 Betする #04/01/2003 # と #05/15/2003 #です。

式の作成と使用の詳細については、「Build an expression」 (式を作成する) を参照してください。

ページの先頭へ

条件式を作成する

このセクションでは、テーブル、フォーム/レポート上のコントロール、およびクエリのそれぞれについて、条件式を追加する手順を説明します。いずれの場合も、式を使って日付/時刻型フィールドの値を調べ、その日付が指定された条件を満たしているかどうかに応じて処理を分けるものですが、使用されている式はそれぞれ少しずつ違います。

テーブルのフィールドに式を追加する

  1. ナビゲーション ウィンドウで、変更するテーブルを右クリックし、ショートカット メニューの [デザイン ビュー] をクリックします。

  2. [データ型] 列で、日付/時刻型のフィールドをクリックします。

  3. [フィールド プロパティ] の [標準] タブで、[入力規則] プロパティ ボックスをクリックし、次の式を入力します。

    > = #01/01/1900 #

    注: 必ずしも米国の日付形式を使用する必要はありません。自分に合った国/地域 (ロケール) の日付形式を使用できます。ただし、日付値は、上記のようにシャープ記号 (#) で囲む必要があります。

  4. [エラーメッセージ] の横の列をクリックし、次のテキスト文字列を入力します。

    「1900 年 1 月 1 日以降の日付を入力」

    この場合も、自分に合った国/地域の日付形式を使用できます。

  5. 変更内容を保存し、データシート ビューに切り替えます。そのためには、テーブルのドキュメント タブを右クリックし、ショートカット メニューの [データシート ビュー] をクリックします。

  6. 日付/時刻型フィールドに、1900 年 1 月 1 日より前の日付値を入力します。[入力規則] プロパティ ボックスに指定されたメッセージが表示され、式が true に評価されるような値を入力しないと、そのフィールドから移動できないことがわかります。

コントロールに式を追加する

  1. ナビゲーション ウィンドウで、変更するフォームを右クリックし、ショートカット メニューの [デザイン ビュー] をクリックします。

  2. 日付/時刻型フィールドに関連付けられたコントロールを右クリックし、ショートカット メニューの [プロパティ] をクリックします。

    コントロールのプロパティ シートが表示されます。

  3. [データ] タブまたは [すべて] タブで、[入力規則] の横のフィールドをクリックし、次の式を入力します。

    > = #01/01/1900 #

    注: 必ずしも米国の日付形式を使用する必要はありません。自分に合った国/地域 (ロケール) の日付形式を使用できます。ただし、日付値は、上記のようにシャープ記号 (#) で囲む必要があります。

  4. [エラーメッセージ] の横の列をクリックし、次のテキスト文字列を入力します。

    「1900 年 1 月 1 日以降の日付を入力」

  5. 変更内容を保存し、フォーム ビューに切り替えます。そのためには、フォームのドキュメント タブを右クリックし、ショートカット メニューの [フォーム ビュー] をクリックします。

クエリに式を追加する

  1. ナビゲーション ウィンドウで、変更するクエリを右クリックし、ショートカット メニューの [デザイン ビュー] をクリックします。

  2. デザイン グリッドの [フィールド] 行で空白のセルをクリックし、次の式を入力します。

    = IIf ([Field_Name] < = #04/01/2003 #、[Field_Name]、"2003" の4月1日より後の日付)

    式を入力するときに、Field_Name の両方のインスタンスを日付/時刻フィールドの名前に置き換えることを確認します。また、2003の4月1日より前の日付がテーブルに含まれていない場合は、データを操作するために式の日付を変更します。

  3. 変更内容を保存し、[実行] をクリックして結果を確認します。

式は次のように機能します。最初の引数 (= IIf ([Field_Name] < = #04/01/2003 #) は、データを満たす必要がある条件を指定します。日付は 2003 4 月1日以上にする必要があります。2番目の引数 ([Field_Name]) は、条件が true のときに表示されるユーザーを指定します。フィールドの日付。3番目の引数 ("4 月1日より後の日付、2003")) は、データが条件を満たしていないときにユーザーに表示されるメッセージを指定します。

なお、すべての条件式で、IIf 関数が使用されるとは限りません。また、IIf 関数は、式が引数を受け取るための手段であって、式そのものではありません。

式とそれらを使用する方法の詳細については、「式を作成する」を参照してください。

ページの先頭へ

条件式の例

次の表では、true と false の値を導くための方法をいくつか紹介しています。これらの式では、特定の条件が true か false かを IIf 関数 (Immediate If) を使って調べ、条件が true の場合と false の場合とで異なる値を返します。

詳細については、「IIf 関数」を参照してください。

説明

=IIf([確認] = "Yes", "受注は確認されました。", "受注は確認できません。")

[確認] フィールドの値が [Yes] の場合に、"受注は確認されました。" のメッセージが表示されます。それ以外の場合は、"受注は確認できません。" のメッセージが表示されます。

=IIf(IsNull([国/地域])," ", [国/地域])

[国/地域] フィールドの値が Null の場合に、空の文字列が表示されます。それ以外の場合は、[国/地域] フィールドの値が表示されます。

=IIf(IsNull([都道府県]), [住所] & " " & [郵便番号], [住所] & " " & [都道府県] & " " & [郵便番号])

[都道府県] フィールドの値が Null の場合に、[住所] と [郵便番号] のフィールド値が表示されます。それ以外の場合は、[都道府県]、[住所]、および [郵便番号] フィールドの値が表示されます。

=IIf(IsNull([要求日] - [発送日]), "欠落している日がないか確認", [要求日] - [発送日])

[要求日] フィールドの値から [発送日] フィールドの値を差し引いた結果が Null の場合、"欠落している日がないか確認" のメッセージを表示します。それ以外の場合は、[要求日] フィールドと [発送日] フィールドの値の差を表示します。

ページの先頭へ

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×