Accessデータベースの完成度を左右する重要な要素の一つが、フォームの仕上がりです。
Accessフォームは、イラストツールを操作するような感覚で調整できるため、自分だけのオリジナルなフォームを作成することができます。
ただし、フォームの基本的な作り方を理解しているからこそ、細かく調整できるのです。
この記事ではAccessフォームの作り方について解説します。
対象としているのは、すでにフォームの使い方をある程度理解している方です。
なお、前回の記事でフォームの種類や使い方について解説していますので、興味のある方はぜひそちらもご覧ください。
もくじ
この記事を書いているぼくは、約10年前からAccessデータベースを構築してきました。
これまでに作成したフォームは数百を超えますが、初めの頃はフォームの重要性をあまり意識していませんでした。
しかし、さまざまなデータベースを開発する中で、使いやすいフォームを作れるかがAccessデータベースの運用成功を左右する大きなポイントであると気付くようになりました。
使いにくいフォームでは、せっかくのデータベースの優れた機能を活かせません。
この記事では、フォーム作りの基本を詳しく解説しますので、しっかりと身に付けましょう!
Accessフォームを作る3つの方法
Accessでフォームを作成する方法は、主に下の3つに大す。
- ウィザードから作る
- リボンメニューから直接作る
- サブフォームを作る
初心者の方には、まず「ウィザード」を使った方法がおすすめです。
元データとなるテーブルやクエリを選び、「次へ」のボタンをクリックしていくだけで、フォームを簡単に作成できます。
このプロセスを通じて、フォーム作成の基本的な流れを自然に身に付けることができます。
リボンメニューから直接フォームを作成する方法もありますが、まずはウィザードで基礎を習得してから挑戦するとスムーズです。
さらに、本記事ではサブフォームの作り方についても触れます。
サブフォームを適切に設置することでデータ入力や閲覧が便利になるので、必ず押さえておきたいテクニックです。
本記事用の教材として、Accessデータベースをダウンロードできるようにしておきます。
クエリとテーブルだけが含まれた、フォームが無いオブジェクト構成です。
Zipファイルですので、解凍してご使用ください。
作成方法1-ウィザードからAccessフォームを作る
サンプルデータベースの中身はテーブルとクエリだけです。
フォームやレポートは含まれていません。
ここでは、テーブル「T02発注伝票」を元データとしてフォームを作成します。
「作成」タブから「フォームウィザード」をクリック。
フォームウィザードが起動します。
まずは、元データとなるテーブルまたはクエリを選択します。
次の画面でフォームで使うフィールドを選びます。
「>」や「<」で1フィールドの選択や除外、「>>」や「<<」は全フィールドが一括で処理されます。
今回は全フィールドを一括選択しましたが、フォームを作成した後でもフィールドの調整は可能です。
フォームの種類を選択します。
今回は「単票形式」を指定しました。
フォームの名前を入力します。
新しいフォームが表示されたら、フォーム作成が完了したサインです。
単票フォームや表形式のフォームの初期レイアウトは、入力欄がシンプルに縦に並んだ状態です。
必要に応じて使いやすいデザインに修正すれば、より使いやすいフォームに仕上がります。
Excelのオートシェイプ感覚で調整できるので、難しく考えることはありません。
では、ここからは編集モードに切り替える手順を説明します。
フォームのタブを右クリックし、デザインビューを選びます。
デザインビューに切り替わり、フォーム内のコントロールが表示されました。
配置前のレイアウトを改めて確認すると、ボックスの位置や大きさを調整すべきところがたくさんあります。
下が配置後のレイアウトです。
フォームの大きさがコンパクトになって、無駄がなくなったように感じたのではないでしょうか?
フォームビューに切り替えてみます。
データが入力された画面を確認すると、修正前に比べてだいぶスッキリしたのではないでしょうか。
作成方法2-リボンからAccessフォームを作る
ここからは、ウィザードを使わないフォームの作り方を解説します。
Accessシステムの構築時によく使うものもあるので、ひととおり把握しておきましょう。
リボンの「フォーム」ボタン
リボンの「フォーム」ボタンからは単票フォームが作成されます。
このボタンでフォームを仕上げるのに、テーブルやクエリにカーソルを合わせておく必要があります。
空白のフォーム
空白のフォームで作成されるのは、コントロールが全く配置されていないフォームです。
「フォームデザイン」をクリックしても、空白のフォームが作成されます。
その他のフォーム
その他のフォームには4つありますが、わりとよく使うのはデータシートや分割フォームの2つです。
フォームを作る時に注意すべきことは、以下の2つです。
- ほかのオブジェクト(テーブル・フォームなど)を全て閉じておく
- 対象のテーブルやクエリにカーソルを合わせる
手順を間違えると違う元データからフォームが作られるので、気をつけて操作しましょう。
作成方法3-サブフォームを作成する
空白のフォームやデータシートフォームは、単独では使えません。
よく使われるのは、データシートフォームをサブフォームとして、メインフォームと組み合わせる方法です。
では、2種類のサブフォームを作る方法を紹介します。
空白のフォームにサブフォームを作る
下のように、空白フォームをデザインビューで表示します。
サブフォームにしたいテーブルまたはクエリを選択。
メインフォームのデザインビューに、サブフォームにしたいテーブルをそのままドラッグするだけ。
「サブフォームウィザード」が起動するので、そのまま「完了」をクリック。
無事にサブフォームが挿入されました。
フォームビューで確認してみると、データシートが中に埋め込まれているのが分かります。
列幅がうまく調整されていないので、見づらいですよね。
フィールドの幅を下のように調整することで、見やすいフォームに改良することができます。
単票フォームにサブシートを作る
単票フォームにサブフォームを追加すると、メインフォームとサブフォームのデータを連動させることができます。
購買管理システムでは、「T02発注伝票」と「T02発注伝票明細」でリレーションシップを設定しています。
また、発注伝票明細テーブルに金額列を追加したクエリ「Q02発注伝票明細表示用」も作成しています。
デザインビューにした単票フォームに、「Q02発注伝票明細表示用」をドラッグします。
「サブフォームウィザード」が表示されるので、リンクの設定を有効にしたまま完了をクリック。
無事にサブフォームが追加されました。
レイアウトを調整した後のフォームです。
レコードを移動させると、メインフォームと連動してサブフォーム内のデータも更新されます。
カスタマイズ-コントロールの変更やボタンの追加
レイアウトを調整したフォームを、以下のようにカスタマイズしてみましょう。
- コントロールの変更(テキストボックス→コンボボックス)
- ボタンを追加
いずれもAccessフォームをカスタマイズする時によく使われる方法です。
コントロールの変更
デザインビューに切り替えます。
テキストボックス「発注先」を選択して右クリック。
「コントロール種類の変更」から「コンボボックス」を選択。
「発注先」がコンボボックスに変わりました。
ついでに「発注者」もコンボボックスに切り替えました。
コンボボックスは、リストから複数のデータを選択できるので、作業効率アップや入力ミス防止につながります。
ボタンの追加
次に、フォームにボタンを配置してみます。
デザインタブのボタンをクリック。
選択されると、アイコンの背景がグレーに変わります。
ボタンをExcelのオートシェイプと同じ感覚で配置します。
配置されると「コマンドボタンウィザード」が起動しますが、無視して「キャンセル」をクリックしましょう。
これでボタン配置は完了です。
ボタンの名称を変えたいときは、プロパティシートの「標題」を編集しましょう。
他の複数ボタンを作成してレイアウトを整えることで、下のように機能性が高いフォームになります。
このようにAccessのフォームをカスタマイズすると、業務システムのような入力画面を作ることができます。
まとめ
今回は、フォームの作り方について簡単に解説しました。
ボリュームの関係上、本記事ではフォームプロパティには触れていませんが、興味がある方は下の記事もあわせてご覧ください。
フォームを思い通りに使えるようになると、Accessをとても便利に使えます。
最後に、ブログでは他のAccessの機能についても解説しています。
よかったらトップページから希望の機能を探してみてください。
また、Accessのータベース設計のまとめ記事もありますので、そちらもごらんください。
≫ これだけで大丈夫! | Accessアプリを学びたい人のための学習手引き