質問の仕方が適切でないかもしれませんがご了承下さい。
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フォームが入力できません。
-
インデックスまたは主キーにはn...
-
ACCESSでフォームのチェックボ...
-
AccessVBAの値によっ...
-
ACCESSで定型入力の〒が表示さ...
-
ACCESS フォームで入力データ...
-
Accessでのデータベース構築に...
-
アクセスでコードを入れると名...
-
文字列の入っているString値、...
-
テキスト型のフィールドでハイ...
-
入力した値をコンボボックスに...
-
Accessで、オートナンバー型を...
-
Accessのフォームのデータシー...
-
アクセスで、テーブル左列の文...
-
access ダブリ登録を防止したい
-
Accessで、最後(更新)にエラ...
-
DELPHIでSQLテーブルを読み込み...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
前のレコードの値を自動で入れたい
-
access別のテーブルを参照して...
-
Accessでデータを更新したらそ...
-
Accessでフォームに自動入力し...
-
インデックスまたは主キーにはn...
-
入力した値をコンボボックスに...
-
Accessフォームが入力できません。
-
ACCESS フォームで入力データ...
-
アクセスでコードを入れると名...
-
access ダブリ登録を防止したい
-
ACCESSでフォームのチェックボ...
-
AccessVBAの値によっ...
-
テキスト型のフィールドでハイ...
-
ACCESS2000の帳票フォームでテ...
-
Accessのフォームでデータ入力...
-
Access2010 レコードの更新日付...
-
アクセスのフォームの必須項目...
-
ACCESSで定型入力の〒が表示さ...
-
「バリアント型でない変数に Nu...
-
Accessのフォーム入力をしても...
おすすめ情報