カラオケの鉄板ソング

ACCESS2003、初心者です。
医療事務のデータベースを作っています。

予約フォーム(frm予防接種予約)を作っていますが、次の(1),(2)の作業がうまくできなくて困っています。

(1)リストボックスへの抽出(検索ボタンを押すまではリストボックスの中は空の状態)

frm予防接種予約のフォームで非連結テキストボックスに生年月日を入力して、検索ボタンを押す

tbl患者個人票テーブルの生年月日と一致するレコード(氏名や住所)をリストボックスに表示させたい。


(2)表示されたリストボックスの中のレコードをクリックすると、そのレコードが氏名や住所に代入される。

一連の作業をfrm予防接種予約フォーム上で行いたいのですが、どのようにしたら良いのでしょうか?

A 回答 (1件)

(1) は、リストボックスではなく、サブフォームを使ったほうが簡単かも。


 リストボックスの場合は、値集合ソースをSQL文で作成し、テキストボックスの
 更新後で、RowSource プロパティに代入し、Requery をかけてやればいいかと。
 VBA Or マクロが必要ですね。
 
(2) は、リストボックスを使うのなら、Column プロパティが使えると
 思います。
> そのレコードが氏名や住所に代入される。
 きちんと正規化されているのなら、氏名・住所等を代入する必要はないです。
 患者ID?のような値を入れてやれば、あとはクエリで対応できますので。
 
    • good
    • 0
この回答へのお礼

返答ありがとうございます。

(1)は、クエリとRequeryでうまくいきました!

コードは、

Private Sub 代入検索_Click()
Me.代入リスト.Requery
End Sub

です。
(代入リストはテキストボックス、代入検索はコマンドボタンです)

(2)は、Columnでやってうまくいきました!

ちなみに、(2)では事情によりクエリを使いたくなかったのでVBAで代入しました。

コードは、

Private Sub 代入リスト_Click()
Me.診察券 = 代入リスト.Column(0)
Me.氏名 = 代入リスト.Column(1)
Me.住所 = 代入リスト.Column(2)
End Sub

です。

ありがとうございました。
おかげで助かりました。

お礼日時:2004/09/25 01:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!