電子書籍の厳選無料作品が豊富!

初めまして。
いつもみなさんの質問と回答を見て参考にさせてもらってます。

わからないところがあるので質問させてください。


Windows7、Access(2007-2010)です。



チェックボックスで抽出をかけて、その結果をサブフォームに表示したいのですが、
どうしてもうまく表示されません。

メニューというテーブルに、
メニュー番号|メニュー名|ピーマン|ニンジン|タマネギ|ハクサイ|ジャガイモ|
という項目を作りました。

ピーマンから右は「Yes/No型」のチェックボックスにしていて、
そのメニューにニンジンが入っていたらニンジンにチェック、
そのメニューにニンジンとジャガイモが入っていたらニンジンとジャガイモにチェックしてます。

たとえば「肉じゃが」の場合だと
M001|肉じゃが| |(チェックマーク)|(チェックマーク)| |(チェックマーク)|
といった具合です。


検索フォームにチェックボックスを5つ用意し、
「検索」というボタンを押したらその野菜が入っているメニューを抽出して
サブフォームに表示できるようにしたいです。

チェックボックスの名前は
ピーマン ch0
ニンジン ch1
タマネギ ch2
ハクサイ ch3
ジャガイモ ch4
としています。

______
Option Compare Database
Private Sub 検索btn_Click()

Dim sqlcode As String
Dim aryFldName(4) As String
Dim i As Integer

aryFldName(0) = "ピーマン"
aryFldName(1) = "ニンジン"
aryFldName(2) = "タマネギ"
aryFldName(3) = "ハクサイ"
aryFldName(4) = "ジャガイモ"

For i = 0 To 4
If Me("ch" & i) Then
End If
Next

End Sub
_______


たくさん調べていろいろ試したのですが、
どこがいけないのかがよくわかりません。

どうすればサブフォームに結果が表示されるのか、
どうすれば結果の抽出ができるのか、
もしわかる方がいらっしゃいましたら教えてください。

どうぞよろしくお願いします。

A 回答 (1件)

考え方は


・サブフォームのクエリを先に作る。
・その上で、検索条件を「パラメータ」で渡す。

具体的には
1)全件検索するクエリを最初に作成
2)材料の列毎に検索条件を設定。
 ピーマン [forms]![メインフォーム].[ch0]
 ニンジン [forms]![メインフォーム].[ch1]
 タマネギ [forms]![メインフォーム].[ch2]
 ハクサイ [forms]![メインフォーム].[ch3]
 ジャガイモ [forms]![メインフォーム].[ch4]
3)これを元にサブフォームを作成する。
    • good
    • 0
この回答へのお礼

bin-chan様、早速のご回答ありがとうございます!

丁寧に書いてくださったのですが、
すみません;
初心者なもので、パラメータで渡す方法がわかりません

どのようにしたらよいですか?

材料の列毎にというのはAnd条件とすれば
よいのでしょうか?

質問ばかりですみません

お礼日時:2012/02/11 15:57

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

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す