既出でしたら、大変申し訳ありません。
選択クエリーの抽出条件をフォーム上テキストボックスに入力した
値で行いたいと思います。
対象の項目は商品コードであり、テキスト型です。
フォーム上のテキストボックスに、1111 と入力し、
クエリーの実行をしたところ、正常に抽出。
しかし、フォーム上のテキストボックスに、"1111" or "2222"と
複数の商品を抽出したいので入力した場合、結果が出ませんでした。
おそらく、"1111" or "2222"の記述に問題があるのだと思い、
何パタンか挑戦しましたが、結果バツ。
どなたかお分かりになる方いらっしゃいますか?
つたない文章で申し訳ありません。
No.3ベストアンサー
- 回答日時:
SELECT *
FROM Goods
WHERE Goods In (CutStr(Forms!フォーム1!条件,",",1) , CutStr(Forms!フォーム1!条件,",",2));
条件: [111]
条件: [111,222]
と、Where節に IN を使うと簡単かも知れません。
ただし、 CutStr関数の類は必要です。
Public Function CutStr(ByVal Text As String, _
ByVal Separator As String, _
ByVal N As Integer) As String
Dim strDatas() As String
strDatas = Split("" & Separator & Text, Separator, , 0)
CutStr = strDatas(N * Abs((N <= UBound(strDatas))))
End Function
一応、条件の個数が1個でも2個でもクエリはちゃんと抽出しているようです。
[クエリ1:選択クエリ]
ID Goods
1 111
2 222
No.2
- 回答日時:
ACCESSの選択クエリーとは、リレーショナルデータベースのSQL文作成を簡易的なGUI画面で操作できる用にしたものです。
選択クエリーの画面表示を、デザインビューからSQLビューに変えてみてください。そうすると下記内容に似たSQL文が表示されると思います。
Select * From [テーブルもしくはクエリー名] Where [抽出条件フィールド] = [抽出対象のフォームテキストボックス名]
フォームのテキストボックスに抽出条件に「1111」を入れるとWhere句の条件が
Where [抽出条件フィールド] = "1111"
となって対象が絞り込まれるわけです。
「"1111" or "2222"」と条件を設定するとこのWhere句が
Where [抽出条件フィールド] = "'1111' or '2222'"
となってしまい対象が絞り込めなくなります。
本来ならば、
Where [抽出条件フィールド] = "1111" or [抽出条件フィールド] ="2222"
とならないと、複数の検索条件に合致したレコードは選択できません。
複数の検索条件を設定したい場合、一番簡単なのはフォームに複数のテキストボックスを用意し、クエリの条件として複数行にわたって対象のテキストフィールドの条件を設定しておくのが簡単でしょう。
例えば、クエリのデザインビューの1行目の条件フィールドにForm![フォーム名]![テキストボックス1]、2行目の条件フィールドにForm![フォーム名]![テキストボックス2]とすると複数の検索条件で絞り込み検索できると思います。
一つのフィールドに入れて複数の検索条件を機能させるには、かなりVBAの知識が必要になります。
(ヒントとしてはSplit関数などでスペース毎に分割して配列に格納し、その配列でWhere句を含んだ条件句を作成し、対象のクエリの条件とする方法があります)
No.1
- 回答日時:
ひとつのテキストボックスに
>"1111" or "2222"
と入力してこれを2つの条件であるとするには
VBAでそのようなプログラムを書いてやらなければなりません
初心のうちは2つテキストボックスを使うほうが簡単でしょう
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSでVBAから選択クエリの抽...
-
AccessでIDを入力したら他の項...
-
ACCESSで、EXCELのような、sumi...
-
クエリ実行結果0件の場合のフ...
-
ACCESS2003のグループ化のエラ...
-
エクセルで、抽出したデータだ...
-
Access サブフォームでの選択行...
-
スクロールバーをVBAで操作したい
-
アクセエスのレコードの更新をV...
-
AccessVBAの値によっ...
-
サブフォームのデータを保存す...
-
ExcelのComboboxでマウスのスク...
-
Accessでレコードの複製
-
ACCESS 複数のフォームから同一...
-
未審査請求包袋抽出表作成とは...
-
Accessのクエリで抽出したデー...
-
ソフトの製品コードを知りたい
-
DVDFab5でISOファイルを抽出し...
-
access の 最終レコードの判定...
-
ACCESSフォーム入力後の確定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSでVBAから選択クエリの抽...
-
AccessでIDを入力したら他の項...
-
クエリ実行結果0件の場合のフ...
-
ACCESSで、EXCELのような、sumi...
-
ACCESS2003のグループ化のエラ...
-
ACCESS2007 マクロ クエリのパ...
-
アクセスのフォームに連番を表...
-
Access 2段階のクエリの作り方
-
access クエリでIIF文で抽出条...
-
サブフォームを利用したクエリ...
-
Accessでフィルタの実行アクシ...
-
Accessクエリの抽出条件にフォ...
-
ACCESS クエリのデザインビュ...
-
フォームからクエリの抽出期間...
-
ACCESS フォームで抽出したデー...
-
クエリーの結果をフォームに表...
-
アクセスのパラメータクエリを...
-
ACCESSで、フォームで抽出した...
-
ACCESSのフォームでボタンを押...
-
AccessのフォームをExcelに出力
おすすめ情報