- ベストアンサー
ACCESSの抽出条件更新方法について
- ACCESSの抽出条件を一括で変更する方法について教えてください。
- クエリーの条件を数値型で複数選択する方法を教えてください。
- クエリーに直接条件を入れる方法を試してみましたがうまくいきません。どのように記述すればいいでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
http://okwave.jp/qa/q2664266.html ですね。 その回答がベストアンサーになってますが、それ、間違ってますね。 その方法でうまくいくのはテキスト型のフィールドが対象の場合です。 Public Function GetWhere() As String と返り値をString型で宣言してますので。 日付型なら、下記のようにする必用があります。 Public Function GetWhere() As Date Dim strWhere As String strWhere = #2007/1/1# GetWhere = strWhere End Function そのページで参考にするなら他の回答の方がいいですね。 内容を理解できてない質問者がベストアンサーを決めるので、必ずしも正しい回答がベストアンサーになるとは限らないのは、ここのシステムの問題点ですね。 また、関数で返せるのは一つの値だけですので、複数の条件を設定するのは無理です。 ANo.1 の回答では、 #2007/1/1# or #2008/1/1# or #2009/1/1# というテキスト型の値としか合致しません。 複数の値と一致する条件を1箇所で入力したいという場合は、条件値を入力するテーブルを用意するのがベストだと思います。 例えば、数値型のフィールドが対象なら、 テーブル名 T_数値条件 フィールド データ型 条件値 数値型 というテーブルを作製します。 クエリを新規作成して、抽出したいテーブルと T_数値条件 を追加して、抽出対象フィールドと 条件値 フィールドを結合します。 これで、T_数値条件 に入力したデータと一致するものが抽出されます。 日付/時刻型フィールドが対象なら、条件値フィールドも日付/時刻型、 テキスト型フィールドが対象なら、条件値フィールドもテキスト型、 というようにデータ型を同じにします。
その他の回答 (1)
- mshr1962
- ベストアンサー率39% (7417/18945)
strWhere = "#2007/1/1# or #2008/1/1# or #2009/1/1#" だと思いますが...
お礼
ご回答ありがとうございました。 現在は自宅で「アクセス」環境がありません。 週明けに会社でチャレンジしてみます。 御丁寧な御教授に感謝いたします。