フォームで期間指定

Accessでパラメータクエリを使うと範囲を指定してデータを抽出することができます。
簡単なフォームを使って、クエリの抽出条件にフォームのコントロールを指定することもできます。この方が、抽出条件のミスは防げるかもしれません。

まず、↓のようなフォームを作成します。
フォーム名は「F_期間指定」で、開始日、終了日を入力するテキストボックスの名前は「テキスト1」「テキスト3」です。
(本来はテキストボックスの名前もわかりやすい名前にしたほうがいいです)

次に指定された範囲のデータを抽出するクエリを作成します。
「日付」フィールドの「抽出条件」に
Between [forms]![F_期間指定]![テキスト1] And [forms]![F_期間指定]![テキスト3]
と入力します。

「F_期間指定」の「テキスト1」と「テキスト3」に日付を入力してフォームを表示したまま、「Q_期間抽出」を実行してみてください。
クエリは「Q_期間抽出」と名前を付けて保存します。

レポートを作成して、印刷したときに期間が表示されるようにしたほうが分かりやすいですね。「F_期間指定」の開始日「テキスト1」と終了日「テキスト3」の値がレポートに表示されるようにします。

レポートの開始日を表示したいテキストボックスのプロパティを開き、「コントロールソース」に
=[forms]![F_期間指定]![テキスト1]
と入力します。
終了日を表示したいテキストボックスには
=[forms]![F_期間指定]![テキスト3]
と入力します。
レポートは「R_売上」と名前を付けて保存します。

「F_期間指定」のコマンドボタンの「クリック時」のイベントプロシージャには、↓のように書き込みます。

Access2007で解説していますが、バージョンに関係なく作成できます。


更新情報