Accessにおける「フォーム」は、データ入力やデータ検索の画面として、ユーザーが直接操作するための重要なオブジェクトです。フォームには、目的に応じた様々な「コントロール」を配置することで、機能の追加や操作の快適性を高めることができます。
この記事では、Accessに標準で用意されているすべてのコントロールについて、その概要を解説します。

コントロールはフォームだけでなく、レポートにも同様に配置できます。
レポートにおけるコントロールも使い方はほぼ同様ですので、文中のフォームをレポートに読み替えてご覧ください。
コントロールとは
Accessのフォームやレポートでは、「テキストボックス」や「ボタン」など、画面上に配置できる部品のことを「コントロール(Control)」と呼びます。
コントロールは、データの入力・表示を行ったり、操作を簡単にしたりと、フォームに欠かせない存在です。
デザインビューを開くと、上部のリボンメニューに並んでいるのがコントロールです。

このコントロールを、まっさらなフォームに配置していくことで、画面が作られていきます。Accessの中で、もっともクリエイティブな要素が強いオブジェクトであると思います。
次項から、各コントロールがどういったものであるか、一つずつ解説していきます。
各コントロールの概要
テキストボックス

テキストボックスは、データを入力・表示する基本的なコントロールです。「連結フォーム」と「非連結フォーム」によって動作が異なります。
連結フォームにおけるテキストボックス
連結フォームとは、フォームの「レコードソース」にテーブルやクエリを指定することで、そのデータを表示できるフォームです。
連結フォームにおけるテキストボックスは、レコードソースとなっているテーブル等のフィールドと関連付いており、そのテーブル等のデータを表示/修正するためのコントロールです。下図のようにデータを閲覧することもできますし、テキストボックスの値を修正すると、その修正内容がテーブルに反映します。

非連結フォームにおけるテキストボックス
非連結フォームとは、フォームの「レコードソース」に何も設定せず、初期状態ではデータが表示されないフォームです。
非連結フォームにおけるテキストボックスは、データが表示されない、独立した空白の入力枠といった存在で、主に入力専用フォームとして活用されます。(入力した結果をテーブルに反映させるには、マクロやVBAで別途登録処理を作り、それをボタンなどのイベントに割り当てる必要があります。)


非連結フォームは、入力に特化していますので、既存データが不用意に修正されてしまう等のリスクを防止することができます
ラベル

ラベルは、主に文字の説明を表示するためのコントロールです。テキストボックスの横に置いて項目名などを示します。

コマンドボタン

コマンドボタンは、クリックすると特定の処理を実行できるボタンです。フォームを閉じる、レコードを保存するなど、VBAと組み合わせて多彩に使えます。コントロールの中でも使用頻度がかなり高いです。

タブコントロール

タブコントロールは、タブで切り替えることができるコントロールの配置スペースです。フォームには、様々なコントロールを配置するスペースが必要です。割と規模の大きいツールの場合、このスペースが足りなくなることがあります。もちろん画面スクロールすることも可能ですが、一画面の中で情報を把握したいこともあります。
そのような場合にタブコントロールを活用することで、小スペースでも多くのコントロールを配置することができます。


タブの追加、削除、順番の入れ替えを自由に行うことができます
リンク

リンクは、Webページやファイル、他のAccessオブジェクトへのリンクを設定できるコントロールです。「リンク」コントロールを設置すると、まず以下の設定画面が表示されます。

この画面で、配置する文字列を「表示文字列」欄に入力し、リンクで開くファイルやWebページのアドレスを選択または入力します。以下はリンク文字を設定した画面例です。

上図のように、フォーム上の好きな場所に、リンクを設定した文字列を配置することができます。リンクは、Webページはもちろん、ExcelやWordといったファイル、他のAccessファイルも開くことができます。
Edgeブラウザ コントロール

前項の「リンク」は、フォーム上にハイパーリンクを設定した文字列を配置し、Webページを別ウインドウで表示するコントロールでしたが、「Edgeブラウザ コントロール」は、Webページをフォーム内に直接表示できるコントロールです。従来から「Webブラウザコントロール」というコントロールが存在しますが、「Edgeブラウザ コントロール」は、Access2024から新しく用意された、Edgeに最適化されたコントロールです。
Edgeブラウザ コントロールについては、こちらの記事でも開設しています。
ナビゲーションコントロール

ナビゲーションコントロールは、タブ切り替え型のメニュー画面を簡単に作成できるコントロールです。各タブの中にサブフォームが作成され、他のフォームを表示することができます。

「タブで画面を切り替える」という要素は、前述した「タブコントロール」と似ていますが、両者には明確な違いがあります。
| ナビゲーションコントロール | タブごとに「移動先の名前」プロパティを持ち、他のフォームを呼び出して表示できる【外部フォームへのリンク】 |
| タブコントロール | タブごとに、その中に直接コントロール(テキストボックスやラベルなど)を配置する【フォーム内のページ分け】 |
タブごとにプロパティを持っているナビゲーションコントロールは、実質的にメニュー画面の役割を示すのに対して、タブコントロールは、任意で多様なコントロールを配置可能で、スペースの有効活用という位置づけです。
なお、フォームの作成メニューに存在する「ナビゲーション」は、コントロールとしての「ナビゲーションコントロール」と同じものです。
オプショングループ

オプショングループは、複数の選択肢から「1つだけ」を選ばせるためのコントロールです。オプショングループの中にオプションボタンなどを配置して使用します。

オプショングループは上図の四角形部分であり、四角形の中に、トグルボタン 、オプションボタン 、チェックボックス のいずれかを配置することで、複数の選択肢を用意することができます。よって、マクロやVBAで処理を割り当てる先は、オプショングループに対して行うことになります。
オプショングループの中に配置するコントロールは、オプション値 というプロパティを保持しており、その値を利用してVBAなどで条件分岐の処理を作成します。
Select Case フレーム36
Case 1
Docmd.Openform "F_※※※※※"
Case 2
Docmd.Openform "F_◎◎◎◎◎"
Case 3
Docmd.Openform "F_△△△△△"
End Select
End Sub
上記コードは、Select Caseステートメントを使い、3つのトグルボタンに設定されたオプション値,1,2,3で分岐処理を行っている例です。「選択肢A」ボタンをクリックすると「F_※※※※※」のフォームが開きます。
改ページの挿入

改ページの挿入は、フォームの印刷時にページ区切りを入れるためのコントロールです。あくまで「印刷時」に効果を発揮するコントロールであるため、フォームよりもレポートで使用されることが多いです。
具体例としては、取引先別や社員別などグループ化したデータに対して、ページを切り替えて印刷することが多いでしょう。
例えば、下図のような組織別社員情報一覧があったとします。

組織別に印刷用紙を分けたい場合は、グループ化した「所属コードヘッダー」に改ページを挿入します。

この状態で、印刷プレビューを確認すると、組織コード別にページが切り替わって印刷されます。

コンボボックス

コンボボックスは、選択肢から1つを選べるドロップダウンリスト形式のコントロールです。

コンボボックスの主なメリットとして、「入力内容の制御」と「入力作業負荷の軽減」があります。
入力内容の制御
コンボボックスには「入力チェック」というプロパティがあり、このプロパティの値を はい にすることで、選択肢以外は入力不可とすることができます。グループ化や集計などを行う場合、一定の入力内容を制御したい場合に有効です。
入力作業負荷の軽減
手入力を行う必要がありませんので、その分作業負荷が軽減されます。

コンボボックスを直接配置する他に、テキストボックスを途中からコンボボックスに変更することもできるよ
コンボボックスについては、こちらの記事で詳しく解説しています。
線

フォーム内に装飾や区切り線を引くためのシンプルなコントロールです。
トグルボタン

トグルボタンは、押すたびにON/OFFが切り替わるボタンです。
トグルボタンを単独で配置して「コマンドボタン」と同じように使用することも可能ですが、通常はオプショングループの中に配置して活用します。使い方によって、マクロやVBAをイベントに割り当てる先が変わります。
トグルボタンを単独で使用する場合…トグルボタン自身のイベントに処理を割り当てる。
オプショングループの中に配置する場合…オプショングループのイベントに処理を割り当てる
プロパティの「テーマの使用」を切り替えることにより、見た目を変えることもでいます。
下記画像の冗談はofficeのテーマを適用、下段はテーマを使用しないクラシックスタイルです。

リストボックス

リストボックスは、複数の選択肢を一覧で表示するコントロールです。役割としては、コンボボックスと似ていますが、コンボボックスはカーソルがフォーカスした時点でリストが展開することに対して、リストボックスは最初からリストが展開しています。

両者の使い分けに関して、視認性ではリストボックス、スペースの有効活用ではコンボボックスとそれぞれの優位性がありますので、フォームの状況に応じて使い分けるのがいいと思います。
また、リストボックスには「複数選択」というプロパティがあり、設定変更により一覧から複数の値を選択することができます。複数選択をうまく活用するには、VBAで処理を作成する必要がありますが、コンボボックスの違いとして把握しておきましょう。
四角形

四角形は、フォームの装飾や区切りとして使う図形のコントロールです。見た目を整えるのに役立ちます。
チェックボックス

チェックボックスは、はい/いいえなどの二択を視覚的に選択するためのコントロールです。以下画像のように、主に Yes/No型 フィールドを割り当てるコントロールとして活用されます。

また、トグルボタンのように、オプショングループの中に配置して、複数選択用のコントロールとしても使用できます。
非連結オブジェクトフレーム

非連結オブジェクトフレームは、外部アプリケーション(Excel、Word、PowerPoint、PDFなど)のドキュメントを埋め込んで扱うためのコントロールです。「非連結」とは、テーブルのフィールドとは関連付いていないという意味です。
コントロールを配置すると下記の設定画面が開きます。設定画面にはMicrosoftのOffice製品やAdobe製品が挿入できることがお分かりいただけると思います。

例えば、PowerPointを挿入すると、空白のPowerPointファイルが開き、シートに入力した文言がそのままフォーム上に反映します。

ファイルの配置方法には「埋め込み」や「リンク」を選択することができます。例えば、外部に発送する手紙の文章データを外部ファイルで保持し、リンク形式で配置することで、文章に変更が生じてもAccessツールの改修を行うことなく、ユーザ側で柔軟に変更することも可能になります。
また、「埋め込み」の場合は、外部ファイルの管理が不要になりますが、Accessファイル自体の容量が消費されますので、注意が必要です。
添付ファイル

添付ファイルは、添付ファイル型 フィールドと連動して、画像やPDF、Officeファイルなどをフォーム上に表示するためのコントロールです。添付ファイル型 フィールドをフォームにドラッグして配置すると、自動的に添付ファイルコントロールとして配置されます。
商品写真や社員社員などの画像を一緒に管理したい場合に適しています。

添付ファイル型 フィールドは画像等を保持できる便利なデータ型ですが、画像データのファイル容量が、そのままAccessファイルのファイルサイズとなるため、ファイルを添付し過ぎると2GBの制約をオーバーしたり、処理パフォーマンスの低下にもつながるため、使用には注意も必要です。
添付ファイルも含めたデータ型に関しては、以下の記事でも詳しく解説しています。
オプションボタン

オプションボタンは、別名「ラジオボタン」とも呼ばれ、1つのグループ内で1つだけ選択可能。通常はオプショングループ内に配置するコントロールです。
詳細は、前述「オプショングループ」の項目をご参照ください。
サブフォーム/サブレポート

サブフォームは、別のフォームをフォーム内に埋め込むコントロールです。親子関係のあるデータで使われます。
下図はサブフォームを挿入したフォーム例です。社員別の資格取得情報を管理するフォームとして、各社員の保持資格を管理する形式ですが、基本的には「一対多のリレーションシップ」を設定したテーブル間のデータを表示・編集するために使用することが多いです。
この例では、社員を管理するテーブルが「親」、資格を管理するテーブルが「子」という関係になります。

「一対多のリレーションシップ」については、こちらの記事でも詳しく解説しています。
連結オブジェクトフレーム

連結オブジェクトフレームは、OLEオブジェクト型 フィールドと連動して、PDF、Officeファイルなどをフォーム上に表示するためのコントロールです。
非連結オブジェクトフレームとの違いは、表示するファイルをテーブルに格納する点です。ただし、テーブルと連動する形式は、後継として 添付ファイル コントロール(添付ファイル型)がありますので、古いAccessツールの互換性を保つ等の目的以外では、添付ファイルを推奨します。
イメージ

イメージは、画像(ロゴや写真など)を表示するためのコントロールです。

Webブラウザコントロール

Webブラウザコントロールは、フォーム上にWebページをフォーム内に直接表示できるコントロールです。
ただし、本コントロールは、現在サポートが終了しているIE(Internet Explorer)ブラウザをベースしたコントロールであり、最新のブラウザで閲覧するとエラーやレイアウト崩れが発生したりと、現在の技術環境にマッチしていないものとなっています。
Webページを表示したい場合は、前述した「Edgeブラウザコントロール」を推奨します。
グラフ

グラフは、Access内のデータを元に棒グラフや円グラフなどをフォーム上に表示できるコントロールです。

まとめ
フォーム/レポートに配置できるコントロールの概要について解説しました。
中には目的が似ていて使い分けに迷うものもあります。特に以下のコントロールはその傾向が強いでしょう。
- 非連結オブジェクトフレーム
- 添付ファイル
- 連結オブジェクトフレーム
- イメージ
ポイントは、画像が扱えるか、テーブルのフィールドと連動しているか、という点がありますので、相違点をしっかり把握しておきましょう。






