ACCESSでのフォーム入力とテーブル入力の問題:敬称の設定がフォームに反映されない

このQ&Aのポイント
  • 宛名発送先リストのデータベースを作成していますが、敬称フィールドの設定がフォームに反映されません。
  • 敬称フィールドには「様」「殿」「御中」「スペース」を選べるように設定しましたが、フォームで入力すると設定が反映されません。
  • データ入力をする場合には設定が反映されているので、フォームにも設定内容を反映させる方法を知りたいです。
回答を見る
  • ベストアンサー

ACCESS でフォームからの入力とテーブルからの入力

今、宛名発送先リストのデータベースを作っています。この中に、「敬称」(データ型は「テキスト型」)というフィールドを設けています。 ●●"様"や"御中"のように宛名ラベルに印刷できるようにするため、データ入力の際にこのフィールドにカーソルをもっていくと「様」「殿」「御中」「 」(スペース)を選べるようにしています。 <設定の概要> 具体的にはテーブルのデザインビューで「ルックアップ」タブ→「値集合ソース」の欄に「"様";"殿";"御中";"  "」と指定しています。 そして、「標準」タブ→「要求値」は「はい」を選択、「空文字列の許可」は「いいえ」を指定しています。このようにして、敬称を入れ忘れるのを防ぐ為に必ず何かを入力しないと先に進まないようにしました(スペースは特別な理由があるため敬称を一時的に入力せずに進む為です)。 <問題点> 初めは敬称の入力忘れの防止を考えていなかったので、「要求値」は「いいえ」を選択、「空文字列の許可」は「はい」を指定していました。そして、この状態で一旦フォームを作成しています。 それから、敬称の入力忘れ防止の為に「要求値」は「はい」を選択、「空文字列の許可」は「いいえ」を指定しました。 ところが、テーブルでデータ入力をする場合にはこれらの設定が反映されている(敬称を入力しなければエラーメッセージが出て次に進めないように出来た)のに対し、フォームから入力するとこれらの設定が反映されていません(敬称を入力せずに次に進めるまま)。 どのようにして、フォームにまで設定内容を反映させればよいのでしょうか???大変困っています。 ちなみに、フォームで入力した内容はデータとして問題なく残っているので、単にフィールドの設定内容が反映されていないと言うことのようです。

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

  • ベストアンサー
  • AlexSuns
  • ベストアンサー率67% (78/115)
回答No.2

>敬称の入力忘れ防止の為に「要求値」は「はい」を選択、「空文字列の許可」は「いいえ」を指定しました。 文脈から推測して、"テーブル"のプロパティでしか設定はしていないと見受けられます "フォーム"上のプロパティに対しても設定しましょう ※テーブルに(いろいろ)設定した状態で、(連結)フォームを新規作成すると設定は反映されます ※(テーブルと連結した)フォームを作成したあと、テーブルにて(いろいろ)設定してもフォームには反映されません

shunshun-dash
質問者

お礼

有難う御座います。 仕組みがわかりました。 手動でフォーム上のプロパティーに手を施して直しました。 フォームを作成した後は設定内容は手動と言うことなのですね。

その他の回答 (1)

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.1

直接的な回答ではありません。 この内容からでは、ご使用のAccessのバージョンと適用Updateを明記した方が 良いのではないかと思います。 こちらで、問題点に書かれている通りのことを実行してみましたが、再現しません でした。 ちなみに Access 2000(9.0.6926 SP-3) です。 現在、他のバージョンについては、環境がありませんので、何ともいえません。

関連するQ&A

  • Accessのフォームとテーブルについて教えてください。

    Access2003を使用しています。 既存のフォームAにフィールド3個を増やしました。 フォームAはテーブル(1)と連動していました。 追加したフィールドはテーブル(6)のものです。 ところがフォーム上で追加フィールドに入力が出来なくなりました。3フィールドのうち、ひとつはコンボボックスです。表示はされますが確定ができません。 フォームAのSQLステートメントではテーブル(1)・(6)以外にテーブル(2)・(3)・(4)・(5)が結合されています。 フォームAからするとテーブル(2)・(3)・(4)・(5)のデータはIDの名称を見るための参照用です。 テーブル(6)は、追加フィールドのコンボボックスが参照用で、他の2追加フィールドは、フォームから入力してテーブル(6)に反映させたいものです。 テーブル(6)の画面では入力できます。 フォーム上からは入力できません。 設定が何か欠けているからでしょうか? 他の質問では2つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • フォーム入力で入力規則を設定するには

    excel2010を使用しています。 シートにデータを入力する際に特定の列に入力規則を設定しました。 (別シートに範囲指定で名前を定義したものを指定) オプションからフォームボタンを追加。 フォームで入力しようとしたら入力規則が反映されておりませんでした。 どこから設定ができるのでしょうか?

  • ACCESSのフォームとテーブルの連携について

    ACCESSのフォームとテーブルの連携について 説明がややこしくて大変申し訳ないのですが、教えてください テーブルが1つあります。 そのテーブルを元にフォームが作成されています。 そおフォームの一つのフィールド((コンボボックス)→[テスト]フィールド名とします)でOK と NG と選択できるように値集合ソースを設定しています。 そしてここからが本題なのですが、 そのフォーム上では使用しない(見せたくない)フィールド([いろは]フィールド名とします。)がテーブルに1つあるのですが 例えばフォームの[テスト]に仮に OK と選択して保存したら、 テーブルの[いろは]に 快調 と自動反映させることは可能でしょうか?

  • アクセスでフォームで入力 複数列にできる?

    アクセス2000です あるフィールドに続けてデータを打ち込むためのフォーム作り中。レポートなら複数列にして印刷できるが、フォームではひとつのフィールドを繰り返し使うには縦にずらっとならびますよね。フォームを工夫して複数列に表示できたら入力しやすいのですが。もしうまい方法がありましたら教えてください。 

  • Access フォームから複数テーブルの入力は?

    フィールドが300ぐらいあるので項目ごとにテーブルで分けています。 1つにまとめるクエリを作成して、そのクエリを元にフォームを作成しました。 テーブルはフィールド名:品番で1対1のリレーションを組んでいます。 テーブル:商品カラー  ・フィールド:品番  ・フィールド:カラー テーブル:商品サイズ  フィールド:品番  フィールド:サイズ クエリのフィールド  フィールド名:品番 (商品カラーのフィールド:品番を指定)  フィールド名:カラー (商品カラーのフィールド:カラーを指定)  フィールド名:サイズ (商品サイズのフィールド:サイズを指定) この場合、品番をフォームから入力すると商品カラーの品番のみ入力されます。 商品カラーと商品サイズの品番を同時にファームから入力は出来ないでしょうか? 現在は10テーブルありますが1つのテーブルにまとめたほうがいのでしょうか?

  • Accessのフォームで必須入力など

    お世話になってます。 Access2003を使って、簡単な入力フォームを作っています。 そこで、A・Bというフィールドが存在するとして、Aはコンボボックスのフィールドで、「パターン1」と選択すると、Bのフィールドは選択はできずに、「パターン2」と選択すると、Bのフィールドが選択できるようにするのには、どのような設定が必要になるのでしょうか? どうぞ、よろしくお願いいたします。

  • Access2007 フォームでの計算結果をテーブルに反映させるには?

    ビスタでAccess2007を使っています あるテーブルにA~Dまでのフィールドが設定されています。 フォームでフィールドA.Bは手入力して C.Dには計算式を設定して計算結果を表示させていますがテーブルに反映されません。 (フォームにはきちんど式通りの答えが表示されますがテーブルのフィールドC.Dは空っぽです。) 例 A・・・10,000 B・・・0.1 C・・・1,000(計算式 A*B) D・・・9,000(計算式 A-C) フォーム上で行った計算結果をテーブルに入力反映させるにはどうすればよいでしょうか? テーブルやフォームの作り方が悪いのか? 計算式の設定が悪いのか? なぜテーブルに反映しないのか理由がわかりません。 そもそもフォーム上での計算はテーブルには反映しないのか? だとすれば反映させるにはどうすればよいのでしょうか? テーブルのフィールドに計算式を設定することは出来るのでしょうか? 出来るとすればその方法は? 疑問だらけでどうすれば求める結果が得られるのかさっぱり解りません。 当方Access2007は初心者も同然ですのでわかりやすく解説して戴ければ幸いです。 よろしくご教授ください。

  • データ>フォームで入力したい。

    お願いします。EXCELLを使っています。 上手く説明できないですが、私なりに具体的にやってみます。 A1に[氏名]と入力していまして、列Aに150名ほどあります。 一人一人に、数値のデータが、45項目ほどあります。 セルA1:AT1を範囲指定して、データ(D)>フォーム(O)とすると、 ご存知のように、 "データ フォームに設定されているフィールドが多すぎます。" というようなエラーが出ます。 フィールドが多いままで、フォーム入力する方法はありませんでしょうか? Excellで無理なら、Accessなら可能でしょうか? (Accessはインストールしてますが、起動したことがあるだけで、  ファイルを作成したりしたことはありません。  データベースについては、全く知識不足です、スイマセン。) 可能ならば、それに加えて、フォームのレイアウトとかも、 色々と都合のいいように変えてみたい。というようなことであります。 説明を聞いて分からなければ、参考本を見てやりたいと思ったりしています。 お構いなければ、アドバイスをお願いします。

  • Accessのテーブル定義作成をVBAから行う

    こんばんは フィールド定義の方法はネットで検索してある程度分かりました。 しかし、次の指定が解りません。 値要求と空文字列の許可です。 指定しないとどちらもいいえになります。はいにするにはどうすればよいのでしょうか。 今は次のようにしています。 Dim Table As DAO.TableDef Dim Field As DAO.Field Set Field = Table.CreateField("フィールの名称", dbText, 文字列の長さ) Table.Fields.Append Field

  • Accessフォームで日付入力

    【Access2013 VBA】 日付のフィールドをフォームから入力スル場合に そのフィールドにカーソルを移動した時、普通は、右端に四角い日付入力用のマークが出て、それをクリックするとカレンダーが表示され、そこから選択することが可能ですが、 このマークが出るフィールドと出ないフィールドがあります。 何故なのかよく分かりません。 その設定方法などがあるのであれば、教えて頂きたいです。 画面の設定方法、そして、VBAでもやり方があるのであれば・・・ よろしくお願いします。

専門家に質問してみよう