- ベストアンサー
アクセス2007の抽出
アクセス2007の抽出 クエリをもとに検索画面を作り部署の抽出をします、 検索画面は 部署名:部署名を入力するところ コマンドボタンで実行です クエリの部署のフィールドのところに[部署]としていますが 部署を複数抽出する場合どうしたらいいかわかりません。 [部署]のパラメータのところに部署名ひとつ「総務」と入れると総務を抽出してくれます これを部署を複数抽出したい場合はどうしたらできますか?たとえば総務と経理を抽出 したい場合 部署は30くらいあります。 説明がよく出来なくてすみません どうぞよろしくお願いいたします。
- みんなの回答 (16)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (15)
- piroin654
- ベストアンサー率75% (692/917)
回答No.16
- piroin654
- ベストアンサー率75% (692/917)
回答No.15
- piroin654
- ベストアンサー率75% (692/917)
回答No.14
- piroin654
- ベストアンサー率75% (692/917)
回答No.13
- piroin654
- ベストアンサー率75% (692/917)
回答No.12
- piroin654
- ベストアンサー率75% (692/917)
回答No.11
- piroin654
- ベストアンサー率75% (692/917)
回答No.10
- piroin654
- ベストアンサー率75% (692/917)
回答No.9
- piroin654
- ベストアンサー率75% (692/917)
回答No.8
- piroin654
- ベストアンサー率75% (692/917)
回答No.7
- 1
- 2
補足
piroin654さん ありがとうございます。 >プログラム上は無ければ作るようになっているのですが、 >プログラムのどこか変更しています? 何も違うところはなく教えていただいたままに作っています。 全部、おさらいしてみました、なんとまたQ_Temp検索が消えてしまいました。 frm検索から日付とスケジュールを選択してcmdボタンをクリックすると Q_Temp検索がパッと消えます。 下記を貼り付けています。 Option Compare Database Private Sub cmd検索_Click() Call mkSQL End Sub Private Sub mkSQL() Dim db As Database Dim qdf As QueryDef Dim ctl As Control Dim strKey As String Dim strSQL As String Dim varitm As Variant Set db = CurrentDb On Error Resume Next '前回作成したクエリを削除。二重作成によるエラーの回避’ For Each qdf In db.QueryDefs If qdf.Name = "Q_Temp検索" Then DoCmd.DeleteObject acQuery, "Q_Temp検索" End If Next qdf Set ctl = Me!lst検索 For Each varitm In ctl.ItemsSelected strKey = strKey & ",'" & ctl.ItemData(varitm) & "'" Next varitm strKey = Mid(strKey, 2) strSQL = "SELECT テーブル1.部署, テーブル1.日付, テーブル1.スケジュール " & _ "FROM テーブル1" & _ "WHERE (((テーブル1.部署) In (" & strKey & "))AND((テーブル1.日付) " & _ "Between [Forms]![frm検索]![tx日付FROM] " & _ "And [Forms]![frm検索]![tx日付TO]));" Set qdf = db.CreateQueryDef("Q_Temp検索", strSQL) DoCmd.OpenQuery ("Q_Temp検索") qdf.Close Set qdf = Nothing db.Close Set db = Nothing End Sub 同じですね? よろしくお願いいたします。