Accessでデータ検索・抽出するとき、直接テーブルを覗きに行っていませんでしょうか。
WEBシステムのように、入力した値でデータ検索出来たらなあ・・・と思ったことがある方!
実はAccessで実現可能です。
本記事では、Accessのフォームとクエリを組み合わせることで、フォームからでもデータ検索・抽出ができるやり方を紹介します。
図解多めで解説していきたいと思いますので、ぜひ参考にしてみてください。
- Accessフォームで日付を入力して検索できる
- 期間指定(From~To)のクエリ条件が書ける
想定する完成イメージ(全体像)
今回のゴールとしては、
・Accessのフォームに、期間選択を入力できる欄を作成
・入力した期間に応じたテーブルデータを抽出
ができるフォームを作成していきます。
★作成の流れ
1.フォームに開始日・終了日を入力するテキストボックスを作成
2.フォームに入力した日付をキーとしてデータを抽出するクエリを作成
3.クエリを実行するボタンをフォームに作成
期間検索の元になるテーブルを準備する
まず期間検索するテーブルを準備する必要があります。
(既に作成してあるテーブルでも問題ありません)
今回は、以下のようなテーブルを用意していきます。
この「日付」をキーにして、フォームに期間選択するクエリボタンを作成していきます。

- 今回は日付検索するので、テーブルの「日付」フィールドが必ず「日付/時刻型」になっているか確認する
検索用フォームを作成する
次は、日付を入力するた目のテキストボックスをフォームに作成していきます。
流れとしては、
・日付を入力するテキストボックスを作成
・入力エラーが発生しないよう、日付の入力規則を設定
の順番で説明していきます。
日付を入力するテキストボックスを作成する
1.「作成」タブから、「フォームデザイン」を選択

2.「テキストボックス」を選択し、フォーム部分をクリック

3.ウィザードが表示されるので、「次へ」を選択

4.「次へ」を選択

5.テキストボックス名を入力し、「完了」を選択

これで、入力用のテキストボックスが作成されます。
次に、作成したテキストボックスで日付を入力する設定をしていきます。
日付入力規則を設定する
1.表示されたテキストボックス名を右クリック→プロパティを選択

2.「書式」タブより、「書式」→「日付(S)」を選択

3.「データ」タブより、「定型入力」→「・・・」を選択
「定型入力ウィザード」より、「日付(S)」を選択し、「次へ」を選択

4.「次へ」を選択

5.「完了」を選択

これでテキストボックスの設定が完了しました。

同じように、終了日のテキストボックスも作成すれば完成です。
期間指定で抽出するクエリを作成する
次に、入力した日付を参照・データを抽出するクエリを作成していきます。
1.「作成」タブより、「クエリデザイン」を選択

2.「テーブルの追加」タブより、「選択したテーブルを追加」を選択

3.テーブル項目を全選択し、ドラッグ&ドロップ

4.抽出条件部分で右クリック→「ビルド」を選択

5.式を入力し、「OK」を選択
範囲をするには、Between…And演算子を使用します。
Between 式1 And 式2今回はフォームの入力値を参照するので、以下の数式を入力しています。
式1→フォームで入力した開始日、式2→フォームで入力した終了日をそれぞれ指しています。
(フォーム、テキストボックスの名前は必要に応じて変更してください)
Between [Forms]![期間選択]![開始日] And [Forms]![期間選択]![終了日]
- フォームを指定するときは、式の[Forms]!は固定です。
- 指定する名前は、[Forms]![フォームの名前]![テキストボックスの名前]となります。
6.式を入力し、「OK」を選択

7.「クエリ名」に入力し、「OK」を選択

これでクエリ作成が完了しました。
フォームにクエリ実行ボタンを作成する
最後に、先ほどのクエリをフォームで実行できるようにボタンを作成します。
1.フォームを右クリック→「デザインビュー」を選択

2.「ボタン」を選択し、フォーム部分を選択

3.種類:「その他」→ボタンの動作:「クエリの実行」を選択し、「次へ」を選択

4.対象クエリを選択し、「次へ」を選択

5.Accessクエリを選択し、「次へ」を選択

6.ボタン名を入力し、「完了」を選択

これで、クエリを実行するボタンを作成することができました。

フォームからクエリを実行する
では実際に開始日と終了日を入力し、クエリ実行のボタンを押すと、、、

対象期間内のデータのみ抽出することができました!

まとめ|Accessの期間検索は「フォーム×クエリ」が基本
Accessのフォームとクエリを組み合わせることで、データ検索・抽出がより簡単になります。
Accessをデータベースや集計で活用されている方は多いと思いますので、ぜひ業務にも活用してみてください。
またこちらを応用することで、日付だけでなく、他様々な項目もデータ検索・抽出が可能になります。
ぜひご自身の業務最適化に合わせてカスタマイズしてみてください。
再度まで読んでいただき、ありがとうございました。


コメント