• ベストアンサー

Accessクエリについて教えてください。

Accessクエリについて教えてください。 日付を入力すると抽出したく下記のように作成したのですが、 フォームを使い、年と月だけ入力することはできますでしょうか?(2010/3/*) Between [Forms]![F_AAA]![入力1] And [Forms]![F_AAA]![入力2] (フォームAAAの入力1に、2010/03/01、入力2に2010/03/31)と入力して2010年3月分を抽出する。  ↓(下記のようにしたい) フォームAAAの入力1に2010、入力2に3と入力すると、2010年3月分を抽出する。 教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • sykt1217
  • ベストアンサー率34% (277/798)
回答No.3

#1です。 >入力2を01と入力するようにするか、入力2に1と入力しても抽出される方法はありますでしょうか?? こういった処理はできればフォームのコントロールのイベントで対応した方が手っ取り早いです。(可能であれば) '入力桁が一桁の場合 If Len([Forms]![F_AAA]![入力2]) = 1 Then '入力値が1以上9以下の場合 If [Forms]![F_AAA]![入力2] >= 1 And [Forms]![F_AAA]![入力2] <= 9 Then '頭に0埋め [Forms]![F_AAA]![入力2] = "0" & [Forms]![F_AAA]![入力2] End If End If 月の妥当性チェックなどをした方がいいかもしれませんが、とりあえず上記を[Forms]![F_AAA]![入力2]の「フォーカス喪失」または「更新後」のイベントに入れてあげれば頭に0埋めはされます。

その他の回答 (2)

  • root_16
  • ベストアンサー率32% (674/2096)
回答No.2

お使いのテーブルから、全てのフィールドを含むクエリを作成します。 新しいフィールドに 年:Year([日付]) と入力します。 また、新しいフィールドに 月:Month([日付]) と入力します。 年のフィールドの抽出条件に[Forms]![F_AAA]![入力1] 月のフィールドの抽出条件に[Forms]![F_AAA]![入力2] と入れれば、やりたい抽出ができると思います。

  • sykt1217
  • ベストアンサー率34% (277/798)
回答No.1

中間一致ということでしょうか? Like [Forms]![F_AAA]![入力1] & "/" & [Forms]![F_AAA]![入力2] & "*"

test321
質問者

補足

Like [Forms]![F_AAA]![入力1] & "/" & [Forms]![F_AAA]![入力2] & "*" でできました!ありがとうございます。 ちなみにもう1点聞きたいのですが、、 入力2が月なのですが、クエリが2010/01/10とかなので、入力2に1としても抽出されません、 入力2を01と入力するようにするか、入力2に1と入力しても抽出される方法はありますでしょうか??

関連するQ&A

専門家に質問してみよう