![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
質問の仕方が適切でないかもしれませんがご了承下さい。
Access2000を使用しています。
社員テーブルには「性別」フィールドがあり、男なら1、
女なら2が登録されています。その社員テーブルを基にした
フォームを作成し、そこに非連結のテキストボックスを作成、
1なら男、2なら女と表示させたいのです。
新規登録時は「性別」フィールドに連結したテキストボックス
の更新後に表示させるようなVBAを記述しておいたのでうまく
いくのですが、登録済みのデータを呼び出した場合は表示され
ません(更新しているわけではないので当然といえば当然なの
でしょうが・・・)。
何かしなければいけないのは分かっているのですが、どのイベント
時にどのようなアクションをすればよいのか教えてください。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
テキストボックス入力後に
フォーム上の表示を 更新した値に表示しなおすには、
入力用テキストボックスの プロパティで、
イベント の 更新後処理 を [イベント プロシージャ] とし、
VBA記述は 次のようになります。
(仮に「性別」フィールドのテキストボックス名を 性別
連結のテキストボックス(男女表示用)の名を 表示用とします。)
If me.[性別]=1 then
Me.[表示用] = "男"
else
Me.[表示用] = "女"
End if
Me.Requery
とします。
最後の Me.Requery でフォームを最新の値で表示しなおします。
No.2
- 回答日時:
多数の種別があった場合はクエリーでまず表を結合してからフォームのデータソースに指定すれば簡単です。
例えば
【テーブルA】 【テーブルB】
ID 部署 部署 部署名称
アアア 01 01 総務部
イイイ 05 02 経理部
ウウウ 13 05 システム部
13 営業部
の表をクエリーで
【クエリー1】
ID 部署 部署名称
アアア 01 総務部
イイイ 05 システム部
ウウウ 13 営業部
と結合します。
あとはフォームのデータソースをクエリー1に指定し表示してやればOKです。
この回答への補足
こんにちは。
またまた追加で質問したいのですがよろしいでしょうか?
<社員テーブル>
社員番号 名前 性別
1 田中 1
2 鈴木 2
3 山本 1
<性別テーブル>
番号 区分
1 男
2 女
上記のテーブルがあって社員テーブルを基に
入力用フォームを作成します。
性別はコンボボックスを作成し、値集合ソースに性別テーブル
を指定し、非連結のテキストボックスに性別テーブルの区分を
表示させたいのです。
性別コンボボックスの更新後イベント処理でテキストボックスに
区分が表示するようなVBAを組み込みうまくいきましたが、レコード
移動ボタンを押したときはうまく表示されません。
どのようなイベントプロシージャを組み込めばよろしいでしょうか?
長くなってしまいましたが宜しくお願いいたします。
No.1
- 回答日時:
はじめまして。
テキストボックスに値を解釈して表示させる方法ですが
IF関数を使ってみてはいかがでしょう?
非連結のテキストボックスのコントロールソースに
=IIF([社員テーブル]![性別]="1","男",IIF([社員テーブル]![性別]="2","女",""))
このように記述すれば現在の社員テーブルのレコードから値を判定し表示できるはずです。
この回答への補足
なるほど!ですね。どうもありがとうございます!!
また、最初の質問から若干離れてしまいますが、もし基となるテーブル
に今回のように2レコードだけでなく30レコードくらいあった場合、
記述するのは難儀ですね。
そのような場合はどうしたらよいのか、教えていただけたらと思います。
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) テキストボックスの値をテーブルに入力したい 2 2022/06/28 12:08
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- Access(アクセス) Dlookupにエラーがでてしまう 1 2022/10/31 14:35
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- SQL Server DBのテーブルの設計ができず困っています。 2 2023/06/29 16:43
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessテキストボックス内に2つのフィールドの値を比較して大きい方の値を表示させる方法 1 2022/09/09 10:50
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
前のレコードの値を自動で入れたい
-
Accessフォームが入力できません。
-
access別のテーブルを参照して...
-
Accessでデータを更新したらそ...
-
ACCESSでフォームのチェックボ...
-
ACCESS フォームで入力データ...
-
テキスト型のフィールドでハイ...
-
Accessでフォームに自動入力し...
-
アクセスでコードを入れると名...
-
インデックスまたは主キーにはn...
-
アクセスで自動でレコードを増やす
-
アクセスのテキストボックスで
-
Accessのフォームでデータ入力...
-
アクセスでの登録ボタンでの処...
-
Accessのテーブルの保護解除
-
アクセスコマンドボタンで登録。
-
Access サブフォームでの選択行...
-
エクセルで、抽出したデータだ...
-
Access2000 サブフォームのReco...
-
Access 複数フォームを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
前のレコードの値を自動で入れたい
-
access別のテーブルを参照して...
-
Accessでデータを更新したらそ...
-
Accessでフォームに自動入力し...
-
インデックスまたは主キーにはn...
-
入力した値をコンボボックスに...
-
Accessフォームが入力できません。
-
ACCESS フォームで入力データ...
-
アクセスでコードを入れると名...
-
access ダブリ登録を防止したい
-
ACCESSでフォームのチェックボ...
-
AccessVBAの値によっ...
-
テキスト型のフィールドでハイ...
-
ACCESS2000の帳票フォームでテ...
-
Accessのフォームでデータ入力...
-
Access2010 レコードの更新日付...
-
アクセスのフォームの必須項目...
-
ACCESSで定型入力の〒が表示さ...
-
「バリアント型でない変数に Nu...
-
Accessのフォーム入力をしても...
おすすめ情報