- ベストアンサー
Accessで、コンボボックスから2つの値を返す方法
Accessで、コンボボックスから2つの値を返すことはできるでしょうか。 たとえば、 名称|CODE1|CODE2 ------------------ いち|11111|AAAAA にい|22222|BBBBB さん|33333|CCCCC というクエリを値集合ソースにしたコンボボックスで、 「いち」の行を選択したら、 CODE1の「11111」をテキストボックスAへ、 CODE2の「AAAAA」をテキストボックスBへ 入れたいのです。 このようなことは可能か不可能か、 もし可能ならどのようにすればいいのか、 教えて頂けないでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
NO2です テキストボックスAのレコードソースに =[コンボ].[Column](1) テキストボックスBのレコードソースに =[コンボ].[Column](2) とする手がありました。 先ほどの回答はなかったことに、 (できないか)
その他の回答 (2)
VBAを使うといってもただの2行ですが、 Private Sub コマンド1_Click() me.テキストA.Value =コンボ.Column(1) me.テキストB.Value =コンボ.Column(2) End Sub VBAを使わないというのはかえって難しくなるかもしれませんが、 まず本当に両方のデータをテキストボックスに入れる必要があるのかを検討されるべきだと思います。 RDB上なので、どこかに格納するために両方のデータを必要としているわけではないと思います。 もしそうならば、データの構造をもうちょっと考えられたほうがよいと思います。 ユーザーが操作上両方のデータを見える状態にしておきたいのであれば、別に3列表示させなくてもクエリなどで表示させたい2列を一列にまとめてそれをコンボボックスのレコードソースとしてしまえばよいと思います。 これからもアクセスを使う機会があるなら少しずつVBAに慣れていかれることをお勧めいたします。
- CHIPDALE77
- ベストアンサー率21% (47/223)
可能ですよ~ VBAで押下時のイベントに CODE1の「11111」をテキストボックスA CODE2の「AAAAA」をテキストボックスB と連続で書けばOK!
補足
ご回答ありがとうございます。 可能な方法があるとわかって安心しました。 ただ、私自身VBAは慣れていないことと、 保守しやすいアプリケーションにしたいため、 なるべくVBAは避けて構築したいと思っています。 VBA以外で可能な方法があれば教えて下さい。
お礼
ぬおおおおおーーーーーー 感動です! しあわせ ありがとうございました!!!