【第8回】フォームを使って抽出条件変更する(フォーム作成編)

2020-07-17

今回は「フォームを使って抽出条件変更する」をお届けします。
前回は「期間を指定してデータを抽出する」を行いましたが、別の期間を指定する際に毎度毎度クエリをデザインビューで開き、条件を変更する必要があります。これはこれで「手間」ではあるので、もう少し簡単に抽出条件を変更しマクロを実行できるように「フォーム」を活用します。フォームを使用すると、一気に「システムっぽく」なります。今回は「フォームを作るまで」をやっていきます。それでは、始めていきましょう♪


サンプルファイル
上記サンプルファイルで続きを作成することが出来ます。※zipファイルになるので、解凍して使用してください。
第7回終了後となっていますが、
①Excelファイルへのリンクがテーブル化されている
②Excelのエクスポートが「C:\Users\Public\Documents」フォルダへ出力される
へ変更されています。


※クエリの条件にフォームのテキストボックスを利用したい方は、以下の記事を参考にしてください。

こちらの記事は連続した「【超初心者向け】Microsoft Access講座」になります。

スポンサーリンク

今回のフォーム完成図

銀行ATMなどの最初の画面をイメージしていただければと思います。Accessの「フォーム」は、あのような画面などを作成することが出来る機能です。
今回は、次のようなフォームを作成します。

①ラベル・・・システムの表題的なイメージで作成
②テキストボックス・・・開始日付/終了日付を入力する
③ボタン・・・ボタンを押すことにより処理を実行する

まではクエリを編集して期間指定をしていましたが、このフォームの日付を用いてクエリの抽出条件を変更できるようにして、マクロを実行できるようにします。

フォームのキャンバスを作る

キャンバスがなければ、絵を描けません。コンピュータ上にフォームという「絵」を書きますので、キャンバスを用意します。
1,[作成]>[フォームデザイン]をクリックします。

2,方眼紙のような「フォーム」が開かれました。これが「キャンバス」になります。

それでは、フォームを一度保存してしまいましょう。
3,ファンクションキー「F12」を押して、フォーム名へ「Sampleフォーム」と入力し、[OK]をクリックしてください。

これで「Sampleフォーム」が保存されました。
「×」ボタンで閉じておきましょう。

フォームをデザインビューで開く

フォームを作成する際には「デザインビュー」にて編集しなければなりません。フォームをデザインビューで開きます。
1,編集したいフォーム上、今回は「Sampleフォーム」で右クリックをします。

2,表示されたメニューより[デザインビュー]をクリックします。

これでキャンバス画面になり、編集が可能になりました。
作成済みのクエリをデザインビューで開くとき同じ方法になります。他のテーブルやレポートなども同じ方法で「デザインビュー」で開くことが出来ます。今後は、この説明画面は簡略化していきます。

ちなみに、フォームを「デザインビュー」で開くと、メニューバーに[デザイン][配置][書式]タブが表示されます。

ラベルを作る

ここでは「ラベル」を作成します。このシステムの表題となりますので、わかりやすいものがよいでしょう。今回は「練習」ですから、そこまでこだわっていませんが・・・

1,メニューの[デザイン]タブを選択し、[コントロール]グループ内の「ラベル」をクリックします。

2,そのまま、キャンバスへマウスポインタを移動させると「+A」という表示に切り替わります。
1cm:2cmのところにポインタを移動させ、そのまま2cm:10cmまでドラッグして範囲を決定させます。

3,カーソルが「ラベル内」にありますので、そのまま『Sampleデータ処理』と入力してください。

4,ラベルの枠以外の部分をクリックし編集を終了してください。

ラベルの「背景色」を変更する

次にラベルの「背景色」を変更します。

5,作成したラベル上にてクリックして、編集対象を選択します。枠が「オレンジ色?」に変更されます。

6,メニューの[書式]タブをクリックします。

7,[フォント]グループの『背景色』の▼をクリックし、「濃い青」を選択します。

これで、背景色が変更されました。

文字色を変更する

このままでは、文字が見えづらいので「文字の色」を変更します。背景が「濃い青」なので、文字色は「白」にしたいと思います。

8,[書式]タブが選択されていること、ラベルが選択状態になっていることを確認します。

9,[フォント]グループの『A』をクリックし「白」を選択します。

これで、文字色が変更されました。

文字の大きさ等を変更する

最初に「文字の大きさ」を変更します。
8,[書式]タブが選択されていること、ラベルが選択状態になっていることを確認します。

9,[フォント]グループのフォントの大きさを『20』にします。

続いて「フォント」を変更します。
10,フォントを「メイリオ」にします。

11,文字を「太字」にしますので『B』をクリックします。

最後に「文字の配置」を変更します。
12,「中央揃え」をクリックします。

これで「ラベル」が完成しました。手順を細かく説明しましたが、ExcelやPowerPointと操作方法はほとんど変わりません。Accessだからと気張らずに使用できるかと思います。

日付を入力できるようにする

続いて、抽出期間を指定する「テキストボックス」を作成していきます。
このテキストボックスもラベル同様に「ドラッグ」で大きさを決めることが出来ます。

1,メニューの[書式]タブを選択し「テキストボックス」をクリックします。

2,縦:3cm/横:6cmの地点より、縦:4cm/横:10cmまでドラッグをしたら、ドラッグを解除し大きさを決定します。

3,テキストボックスの書式を決定するウィザードが表示されます。今回は「文字配置」を「中央揃え」にし、上余白を「2mm」にし、[次へ]をクリックします。

4,設定はそのままで[次へ]をクリックします。

5,今、作成した「テキストボックス」に名前を付けます。このテキストボックスが何を意味するのかがわかりやすいように名前を付けます。今回は「テキスト_開始日」とします。入力が完了したら[完了]をクリックします。

6,ひとつテキストボックスが出来上がりました。テキストボックスのラベルを修正するため、ラベル部分をダブルクリックしてください。

7,ラベルを「開始日」へ修正します。

右側に「プロパティシート」が表示されたと思います。これは、テキストボックスやラベルなどの「細かい設定」を行う際に使用します。対象のオブジェクト上にて右クリックして[プロパティ]を選択することで表示されます。不要であれば「×」で閉じることが出来ます。今回は、詳細についての説明を省きます。

 

テキストボックスの書式を決定する

今回は、期間指定を行うためのテキストボックスを作成していますので、入力される書式を「日付形式」に変更します。

8,テキストボックス「テキスト_開始日」のプロパティシートを開きます。テキストボックスの上で右クリック⇒プロパティでも良いですが、上下左右矢印のアイコン状態でダブルクリックしても開くことが出来ます。

9,プロパティシートの[書式]タブを選択します。

10,[書式]にて「日付(S)」を選択します。

これで、ひとまずテキストボックスが一つ出来上がりましたので、確認したいと思います。フォームビューで表示させますので、[表示]グループの▼をクリックして、[フォームビュー]をクリックします。

これが入力画面になります。テキストボックスの右上にカレンダーのアイコンが表示され、そこから日付を選ぶこともできます。

同じ要領で、縦:5cm/横:6cmの地点より、縦:6cm/横:10cmまでのテキストボックス「テキスト_終了日」を作成してください。

マクロを実行できるようにする

続いて「ボタンが押されるとマクロを実行する」ようにします。
1,[デザイン]タブを選択し、[ボタン]をクリックします。

2,縦:7cm/横:5cmの地点より、縦1cm/横1cm程度の大きさでドラッグして大きさを決定します。

3,コマンドボタンウィザードのダイアログボックスが表示されますので、種類を「その他」、ボタンの動作を「マクロの実行」を選択し[次へ]をクリックします。

4,今回実行させるマクロ「Sampleマクロ」を選択し、[次へ]をクリックします。

5,ボタンに表示させる文字を決定するため、[文字列]のラジオボタンクリックし、『実 行』と入力し、[次へ]をクリックします。

6,先ほどのテキストボックスと同じように「識別できる名前」をボタンに付けます。今回は「Sampleマクロ実行」とでもしておきます。入力が終わりましたら[完了]をクリックします。

これで「マクロを実行するボタン」が完成しました。しかし、ちょっと見た目が悪いので、大きさを整えます。

ボタンの大きさを変更する。

この変更方法は、他のラベルやテキストボックスなどのオブジェクトも同様になります。

1,ボタンを選択します。

2,選択状態になりましたら、右下に⇔を表示させ、縦:8cm/横:9cmの地点までドラッグします。

これで、ボタンの大きさを変更できました。

以上で今回作成するフォームは完成しました。×ボタンで保存して閉じておきましょう。

起動時にフォームを開くようにする

Accessを起動した際に、先ほど作成したフォームが自動的に開いたらひと手間省けますよね?今回は、その設定を行います。

1,メニュー[ファイル]をクリックします。

2,[オプション]をクリックします。

3,「Accessのオプション」のダイアログボックスが開きますので[現在のデータベース]をクリックします。

4,「フォームの表示」にて『Sampleフォーム』を選択し、[OK]をクリックします。

5,ご覧のようなメッセージが表示されますので[OK]をクリックします。

設定は以上で完了です。それでは一度Accessを閉じて、起動した際に開かれるか確認してみましょう。

今回のおさらい

今回は「フォーム」にて
・ラベル
・テキストボックス
・ボタン
という3つのオブジェクトを作成しました。
フォームを作成できるようになると、一気に「システム感」が出てきて『誰にでも使えるものを作りたい!』という欲求が出てくるかと思います。詳細な設定方法などは、また別の機会にお伝えできればと思います。今回「抽出期間を指定できるフォーム」を作成しましたので、次回は「クエリの条件にフォームのデータを使う」をお届けします。