入力規則の条件分岐方法

このQ&Aのポイント
  • 入力規則を条件分岐させる方法について説明します。入力規則とは、特定の条件を満たさない場合に入力を制限するためのルールです。
  • フィールドAとフィールドBに規格の最大値と最小値が格納されているフォームにおいて、フィールドCの入力規則を条件分岐させたい場合、次のような方法があります。
  • フィールドCの入力規則プロパティに「>=フィールドB or <=フィールドA or Is Null」と入力することで、フィールドAまたはフィールドBのいずれかがデータを持っている場合に入力を制限します。しかし、両方のフィールドにデータが入っている場合に制限がかからないため、IIf関数を使用する方法を考えることもできます。しかし、入力規則プロパティに条件式を入力することはできないため、他の方法を検討する必要があります。
回答を見る
  • ベストアンサー

入力規則を条件分岐させる方法

規格最大値が格納されているフィールドA、規格最小値が格納されているフィールドB、そして測定データを入力するフィールドCがあるフォームを作成しました。フィールドCの入力規則プロパティで 「>=フィールドB or <=フィールドA or Is Null」 と入力しましたが、フィールドA、Bいずれかにデータが入っている場合(例えば100以下、100以上というような規格)は入力チェックが効きますが、フィールドA,Bともにデータが入っている場合(例えば100~200というような規格)に対しての入力チェックがかかりません(冷静に考えれば当然ですが)。そこでIIf関数を使おうと思ったのですが、入力規則プロパティの欄に条件式を入力することはできないようです。他の方法で入力規則の条件分岐をさせる方法ありますでしょうか。ご回答頂ければ非常にありがたいです。宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.1

最大値セルをA1最小値セルをB1測定データセルをC1とします。 C1の入力規則から、「整数」を選択すると下にまたボックスが出ます。「データが次の値の間」を選択、最小にB1最大にA1のセルを選択する。後は、適当にコメントを入れてください。 式が必要だったら、多分「整数」を「ユーザー設定」にすれば使用できると思います。

関連するQ&A

  • 入力規則があるフィールドへの空文字列許可(ACCESS2000)

    フォームでフィールドAとフィールドBがあるとします。フィールドBは既に数字が入力されていて、フィールドAの入力規則に例えば ">[フィールドB]"と入れますと、入力規則は反映されますが、入力規則に反した値をいれた後、その値をDeleteして次のレコードへ移ろうとすると、入力規則に反するという内容のメッセージがでてしまいます。入力規則を">[フィールドB]or Is Null"と変えてみましたがだめでした。どなたか助けてください。

  • MSExcel2003で条件分岐の方法

    今まで、条件AまたはBである時は真・それ以外は偽を返す式を作るとき =if(A1="A","真",if(A1="B","真","偽")) という式を作ってきました。これをor記号を使って =if(A="A"or"B","真","偽") というように作り替えたいのですが,うまくいきません。 今は二つの条件に合わない場合は偽としていますが、これが 5つくらいになってくるとこの方法補煩雑で間違いが多くなり使えないのですが、 どうすれば上手な条件分岐をすることができますか?

  • Access クエリでの抽出条件の質問です。

    Access初心者です。宜しくお願いします。 選択クエリで、選択したフィールド同士を比較して条件に合えば表示したいのですが、うまくいきませんご伝授お願いします。 (例) フィールド名 A B C D の4つのフィールドがあります。 AとBを比較して同じでなければ表示、又はCとDを比較して同じでなければ表示 Aのフィールドの抽出条件に <>B 「or」で入力しました。 Cのフィールドの抽出条件に <>D の二つの条件を入力しましたがうまく条件にみたしません。A~Dまでのデータは条件に合うように登録されています。 宜しくお願いします。

  • 条件分岐(if)について

    条件分岐(if)についてお聞きしたことがあります。 例えば if($a == 'A' || $a == 'B'){ 処理 }else if($a == 'C' || $a == 'D' || $a == 'E'){ 処理 }............... といった条件分岐があったとて、お聞きしたいことが2点あります。 ・条件分岐この後も数十個続いたとします。その場合もelse ifで一つ一つ 条件を書かなければならないのでしょうか? ・条件式if($a == 'A' || $a == 'B'....)が長くなる場合プログラムが見にくくなるので 別途に条件式を書いておいてif文の所では($a == ◯)といったように簡潔に書くことは できないのでしょうか? 宜しくお願いします。

    • ベストアンサー
    • PHP
  • 前のセルの入力規則を見て、さらに入力規則で・・・

    入力規則のリスト表示の方法について教えていただきたいのですが・・・  A列          B列 A,B,C  A-1,A-2,A-3,B-1,B-2,B-3,C-1,C-2,C-3 A列に、A,B,Cと入力規則を設定します。 B列には、A列に入力したAに関係するA-1,A-2,A-3、 Bに関係するB-1,B-2,B-3、Cに関係するC-1,C-2,C-3 を入れたいのですが、B列のリストが多くなりすぎるので、A列にAを入力したときはA-1,A-2,A-3のみをリストに表示させることは、可能でしょうか?(B,Cについても同じ) よろしくお願いします。

  • 入力規則 条件リスト

    入力規則でリストを作りたいのですが・・・ 例えば A1 大阪府  B1 此花区 までは入力規則でリストを作ったので C1 に大阪府此花区から下のリストを作りたいです。 表は別のシートにA1に大阪府此花区安治川と一つのセルに 入力してあるのでC1には大阪府此花区を除いたリストを作りたいです。 説明が上手くできなくてすいません         

  • ACCELのIIF関数の条件設定方法について

    ACCELのIIF関数で、空白のフィールドを条件に指定する方法を教えてください。 EXCELの場合なら、「=if(A1="",B1,C1)」というようにA1フィールドが空白の時は、B1の値をとるというようにしたいのです。

  • ACCESS IIF関数 複数条件の設定について

     選択クエリにおいて、あるフィールド「 X」 のレコード数値が     0<[X]<=50   であれば A    50<[X]<=100  であれば B    100<[X]<=150  であれば C  と表記させるフィールド「Y」を追加したいと考えています。  この場合、Yのフィールド設定で指定する数式についてご教授願います。  一応、   IIf(0<[X]<=50,"A","") Or IIf(50<[X]<=100,"B","") Or IIf(100<[X]<=150,"C","")   としましたが、実行すると、Yの列がすべて「-1」と表記されてしまいます。  何卒よろしくお願いいたします。

  • Access フォームの入力規則設定がわかりません

    いつもお世話になっております。 Access2010で、フォーム内テキストボックスに日付を入力しており、 入力規則に反している日付に対しエラー表示させています。 複数の入力規則の設定は可能でしょうか? 具体的には以下の場合の(2)の設定がわかりません。 日付A 日付B 日付C があり (1)日付Bは 日付Aの日にちを含め以降であればよい   ですので、 日付Bの入力規則は >=[日付A] Or Is Null としました (2)日付Cは 日付Bの日にちを含め以降であればよい   もしくは日付Bに何も入力されていなければ   日付Aの日にちを含め以降であればよい 日付Cの入力規則を >=[日付B] Or Is Null のみですと、日付Bに何も 入力されていないと、日付C入力後エラーメッセージが返されてしまいます。 宜しくお願い致します。

  • 条件分岐によるページ移動

    超簡単な質問で申し訳ないですが、宜しくお願いします。ネット上をいろいろ検索したのですが、わからず、ご質問させてください。 CGIで、 条件Aのときは「A.HTML」 条件Bのときは「B.HTML」 条件Cのときは「C.HTML」 というように条件分岐によるページ移動をしたいのです。 条件分岐の記述はわかるんですが、ページ移動の記述の方法がわからず悩んでおります。 宜しくお願いいたします。

    • ベストアンサー
    • CGI

専門家に質問してみよう