• ベストアンサー

Access 条件付値要求について

Accessに関して教えてください。 例えばA、B2つのフィールドがあり(A数値型、Bテキスト型)、Aのフィールドに3,5,7の数値が入力された場合のみに、Bフィールドに「値要求」をさせたいのですが、そのようなことは可能でしょうか。 宜しくお願いします。

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

  • ベストアンサー
  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.3

>列レベルのチェック制約では複数列を使用できません 「テーブルの入力規則に」と書きましたよ フィールドの入力規則ではフィールド名は使用できません

seaport3a
質問者

お礼

解決しました!!! ご親切にありがとうございました。

その他の回答 (2)

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.2

ああそういう意味ね その場合はテーブルの入力規則を使用します [A] Not In (3,5,7) Or [B] Is Not Null And [A] In (3,5,7)

seaport3a
質問者

補足

ご回答ありがとうございます。 なるほど入力規則ですか~ ただ上記の通り設定すると「列レベルのチェック制約では複数列を使用できません」といエラーが返されてしまい、テーブルが保存できなくなってしまうのですが、私の設定方法が間違っているのでしょうか…

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

値要求というのがどういう意味か分かりませんが Aフィールドの値によって入力の可否を切り替えたいのなら 条件付書式が使えます

seaport3a
質問者

補足

値要求は、テーブルをデザインを開いたときに、フィールドプロパティの中で設定する項目の1つです。 そのフィールドに必ず何かを入力するよう求めるものです。 空白にしようとするとエラーが返され次のレコードに進めません。 この機能を限定的に使いたいのですが、出来ないのでしょうか?

関連するQ&A

  • accessのクエリで入力が不可能…

    【テーブルA】 フィールド1〔数値型〕 フィールド2〔テキスト型〕 フィールド3〔テキスト型〕 フィールド4〔数値型〕 【テーブルB】 フィールド1〔数値型〕 フィールド2〔テキスト型〕 フィールド3〔数値型〕 フィールド4〔テキスト型〕 となっています。 両方のテーブルを使い、クエリを作成しました。 リレーションが、テーブルAのフィールド1と、テーブルBのフィールド3に設定してあります。 このようにして作成したクエリでデータの入力ができません。 なぜでしょうか? Access2000です。

  • Accessのフィールドプロパティの設定について

    Access初心者です。簡単なことで申し訳ありませんが教えてください。 あるフィールドを次ぎのように設定したいです。 「フィールドB」(テキスト型)は「フィールドA」(テキスト型)の数値を参照し、なおかつ末尾の「1」を追加して表示する。 「フィールドA」に”123456”と入力したら「フィールドB」には自動的に"1234561"と表示されて欲しいのです。 エクセルならばとっても簡単に設定できるのに・・・! アクセスではどうしたらよいのか思いつきません。 よろしくお願いいたします。

  • ACCESS フォーム上での条件設定

    どなたかお知恵をお貸しください。 Access2000 検索用のフォームを作成しました。 A・B・C・D・E・Fというフィールドがあり、それらのフィールドを 含むデータ形式のフォームが作成されています。 やりたいことは、フォームにテキストボックスを5つ配置し それぞれ(A・B・C・D・E・Fというフィールドに対する)の条件 を入力して、実行(コマンドボタン)をクリックすると 条件に一致したフォームが表示されてくるようにしたいのです。 ただし、条件が入力されない場合もあります。 (5つのうち1つだけ条件が入る場合など) 初心者などでどのように設定すればいいのか分かりません。 どなたかお力をお貸しください。 よろしくお願いします。

  • アクセスVBA テキストボックス入力値からの参照

    マイクロソフトアクセス初心者です。 現在、アクセスでデータベースを作成しています。 2つのフォーム(フォーム(1)、フォーム(2))、2つのテーブル(入力情報、マスタ)、2つのテーブルをもとにした1つのレポートを作成しています。 『フォーム(1)』のテキストボックスAに入力された値を、Dlookup関数で『フォーム(2)』のテキストボックスBに数値を参照しています。 『フォーム(2)』のテキストボックスに表示された値を、『フォーム(2)』に設置されたコマンドボタンをクリックすると、VBAで『テーブル入力情報』のフィールドAに入力されるようにしています。フィールドAについてのマスタとなるテーブルが『テーブルマスタ』です。 リレーションシップを設定せず、ただ単に値を入力することは出来るのですが、レポートを作成するにあたって、『テーブル入力情報』と『テーブルマスタ』のフィールドAに1(テーブルマスタ)対多(テーブル入力情報)のリレーションシップを設定したいと思っています。 リレーションシップを設定し、テキストボックスBに表示された数値を『テーブル入力情報』に入力する際、『テーブルマスタ』から該当するデータを選択して『テーブル入力情報』に入力されるようにしたいと思うのですが、現状では、リレーションシップを設定すると、入力値が真っ白になってしまい、レポートにも入力したデータが反映されません。 ちなみに、入力する際はフィールドA=Me.テキストボックスBのようにしています。 何か良い解決策がありましたら、是非教えていただけませんでしょうか? 分かり難い文章かと思いますが、どうぞ宜しくお願い申し上げます。

  • アクセスのクエリで

    アクセスのクエリで、テーブルAのフィールド1が空白の場合は、0と表示し、(数値型)そうでない場合はフィールド1の値を表示するにはどの様にしたら良いですか? 誰か教えて下さい。よろしくお願いします。

  • Accessで、親フィールドに子フィールドの値を入れたいのですが

    親フィールドの[テキストボックスA]に [テキストボックスB]-子フィールドのフッターにある[テキストボックスC] という式の値を表示させたいのですが。 Aのコントロールソースに = [B]-[子フィールド名].フォーム![C] と入力すると「#Name?」となり、「フォーム」を「Form」とすると空欄になるのですが、どこを直せばいいのでしょうか。 [B]は数値です。 [C]はsum関数が入っていて、普通に表示されてます。 宜しくおねがいします。

  • エクセル 条件付でセルを非表示にしたいのですが

    教えていただけるとうれしいです。 A列:数値を個々に入力 B列:B1=A1-100、B2=A2-100、... という表を作った場合、 例えばA3に数値未入力の場合は、A3=0と認識されるため、B3は-100になります。 これを表示させたくないのですが、A列に数値未入力の場合、対応するB列の行のセルには何も表示させないという方法はありますでしょうか? 未入力の場合は表示せず、0を入力した場合は-100と表示させたいのです。

  • Access Dcount で抽出条件複数の場合

    教えてください。Access2000です。 テーブルAでフィールド1の値が「1」でフィールド2の値が「Cを含む全て」としたいのですがどうしたら良いですか? テキストボックスのコントロールソースに記入します。 DCount("*","[テーブルA],"[テーブルA]![フィールド1]=1 and [テーブル1]![フィールド2]='*C*'") よろしくお願いします。

  • Access2003 複雑な条件のデータ抽出

    ☆1つのテーブルで、フィールド[A]~[C]があり、文字および英数字のデータが混在しています。 (ただし、フィールド[C]には、空欄(Null)になっている場合があります) =========================================================== (テーブル(1)) No  [A]      [B]    [C]     [D]      [E]      [F] 1   111      X    あ       2   222      X     か   3   333      X     さ  4   111      Y    た 5   222      Y   (Null)  6   333      Y     は 7   222      Z     ま   8   333      Z     や  9   111      Z    ら    =========================================================== [課題] (1) テーブル(1)のフィールド[A]の値を参照し、「111」の場合は、   フィールド[C]の値を[D]へ抽出する([B]でグループ化) (2) 同様に、フィールド[A]の値を参照し、「222」の場合は、   フィールド[C]の値を[E]へ抽出する([B]でグループ化) (3) 同様に、フィールド[A]の値を参照し、「333」の場合は、   フィールド[C]の値を[F]へ抽出する([B]でグループ化) (4) 新規クエリにて、上記課題(1)~(3)の条件を指定して実行すると    以下の抽出結果が表示される =========================================================== [抽出結果] (テーブル(2)) No  [B]    [D]    [E]      [F] 1   X     あ    か      さ     2   Y     た   (Null)    は   3   Z     ら    ま     や =========================================================== 別々のレコードにあるフィールド[C]の値を、条件に従い テーブル(2)のように1つのレコードにまとめたいのです。  大変恐縮ですが、私はSQLが書けないので、フィールド欄へ関数式を 入力して条件を指定しております。 できましたら、各フィールドへ入力する関数式を教えていただけると助かります。 また、関数だけでは出来ない場合は、SQLで教えていただければ幸いでございます。 お手数お掛けしますが、何とぞ宜しくお願い致します。

  • アクセス2003で検索条件と検索キーワード検索

    アクセス2003で検索機能を作りたいです。 まずプルダウンで検索条件を選び、さらに検索キーワードを手入力し、その条件に見合ったものを抽出するという形。 検索条件とは、フィールド名。検索キーワードは、フィールドの中にある言葉。 質問 (1)マクロのフィルタの実行のwhere条件式において 〔フィールド名〕like~と入れているのですが、この頭のフィールド名をいじくれば良いのか? (2)ある識者に伺ったところ、次のVBA(イベントビルダ)を教わりましたが、オブジェクトに値を代入できませんと出てきました。 Me.filter=""&Me.![テキスト名1]&"like'"&"*"&Me![テキスト名2]&"*"&"'" Me.filterOn=True このテキスト名1をコンボに変更しました(非連結)。検索条件となるあるテーブルを値ソースとしています。何か自分が間違っていますか? できれば、クエリを使うことなく行きたい。 アクセスのつくりとしては、 基幹となるテーブルAとそれに1対多にあるテーブルBそしてテーブルBと1対1にあるテーブルCの3つをクエリを用いて1つのフォームに表しています。 その中のいくつかのフィールドを選択条件とし(プルダウンで選ぶ)、キーワード入力する。 小職、アクセスを始めたばかりです。どうかよろしくお願いいたします

専門家に質問してみよう