概要
| この記事の結論 Accessフォームを広く表示するには、Access本体のウィンドウと、その中のフォームを分けて確認します。通常フォームを重なり合うウィンドウで使う場合は、開く時のイベントでDoCmd.Maximizeを実行できます。ただし最大化しても入力欄や文字が一緒に大きくなるとは限りません。タブ表示、ポップアップ、アンカーの役割を整理したうえで、利用するパソコンの画面サイズと表示倍率に合わせて操作しやすいレイアウトを整えます。 フォームの最大化とは、フォームのウィンドウを使用可能な領域へ広げる操作であり、部品や文字の拡大とは別です。 画面名やリボンの配置はAccessの版で異なる場合があります。操作は変更前のコピーで試し、業務で利用する環境の結果を確認してください。 |
この記事でわかること
- 何を画面いっぱいにしたいのか整理する
- タブ表示と重なり合うウィンドウを確認する
- 通常フォームをVBAやマクロで最大化する
- ポップアップと作業ウィンドウ固定を理解する
- アンカーで入力欄とボタンを配置する
この記事の主な内容
- 何を画面いっぱいにしたいのか整理する
- タブ表示と重なり合うウィンドウを確認する
- 通常フォームをVBAやマクロで最大化する
- ポップアップと作業ウィンドウ固定を理解する
- アンカーで入力欄とボタンを配置する
- 別のパソコンで崩れる場合の確認と復元
- よくある質問
想定読了時間:約15分~18分
1. 何を画面いっぱいにしたいのか整理する
フォームを広く使いたいときは、どの範囲を広げたいのかを先に決めます。Access本体が小さい場合、その中のフォームだけを最大化しても、ディスプレイ全体には広がりません。また、ウィンドウが広がっても入力欄の幅や文字サイズが自動で変わるとは限りません。まず次の3層に分けて確認してください。
| 広げたい対象 | 操作・設定の方向 | 確認する結果 |
|---|---|---|
| Access本体 | Windowsの最大化ボタンで広げる | Accessの外枠が画面の作業領域を使う |
| 通常フォームのウィンドウ | 表示方式を確認し、必要なら最大化する | Access内部のフォーム表示領域が広がる |
| 入力欄・一覧・ボタン・文字 | アンカーや幅・高さ・文字サイズを調整する | 広がった領域を使って操作しやすくなる |
例えばノートPCで顧客入力画面を開き、右側の余白だけが大きくなった場合、ウィンドウの最大化自体はできている可能性があります。このとき必要なのは最大化コードの追加ではなく、入力欄を横へ伸ばす、ボタンを右下へ寄せるなどの配置調整です。何が小さいのかを言葉にすると、設定箇所を絞れます。

業務画面のコピーで確認する
既存フォームを変更する前に、対象ファイルまたはフォームのコピーを残します。今回は通常の入力フォーム『F_顧客』を例にし、最初は[ポップアップ]と[作業ウィンドウ固定]を[いいえ]として確認します。すでに特殊な起動処理がある場合は、設定を一括で変えず、開くためのメニューや既存コードも調べてください。
完成条件も先に決めます。『画面を広げる』だけでなく、氏名と住所を見渡せる、保存ボタンが常に押せる、元のメニューへ戻れる、といった操作で判断します。リボンやナビゲーションウィンドウを隠して表示領域を増やすことは別の設定です。最大化の確認と同時に、業務に必要な操作まで消さないようにします。
2. タブ表示と重なり合うウィンドウを確認する
通常フォームの見え方は、データベースのドキュメントウィンドウの設定で変わります。タブ付きドキュメントでは、フォームはタブとしてAccessの作業領域に表示されます。重なり合うウィンドウでは、フォームなどのオブジェクトを個別のウィンドウとして扱います。どちらを使うか決めずにコードだけを追加すると、期待した変化が見えないことがあります。
| 表示方式 | 見え方 | 広く使うときの考え方 |
|---|---|---|
| タブ付きドキュメント | タブを切り替えて表示する | 本体の大きさと部品の配置を先に確認 |
| 重なり合うウィンドウ | 複数のウィンドウを重ねて表示する | 通常フォームを最大化する方法が使える |
| ポップアップフォーム | ほかのAccessウィンドウより前に表示する | 通常フォームとは分けてサイズと操作性を確認 |
1. [ファイル]から[オプション]を開きます。
2. [現在のデータベース]を選び、ドキュメントウィンドウに関する項目を確認します。
3. 現在の表示方式を控え、目的に応じて[タブ付きドキュメント]または[重なり合うウィンドウ]を選びます。
4. 変更を保存し、案内に従ってデータベースを閉じて開き直します。
5. F_顧客を開き、表示方式が変わったことを確認します。

この設定は1個のフォーム専用ではなく、現在のデータベースの表示方式に関係します。複数のフォームやクエリを同時に使う業務では、ほかの画面の切り替えやすさも確認してください。自分のフォームだけに都合のよい設定へ変える前に、利用者が普段どの順番で画面を開くかを把握しておきます。
タブ表示ですでに作業領域が使われているなら、最大化コードを入れても見た目の改善が小さい場合があります。その場合はAccess本体の最大化と、後述するアンカー・部品サイズへ進みます。操作説明の画面と自分の画面が違うときも、最初に表示方式を比べると原因を見つけやすくなります。
3. 通常フォームをVBAやマクロで最大化する
重なり合うウィンドウで通常フォームを開く場合、開く時のイベントでDoCmd.Maximizeを実行する方法があります。この命令が対象とするのはアクティブなAccessのオブジェクトウィンドウです。Accessアプリケーション本体をWindowsの画面いっぱいへ広げる命令と同一視しないでください。以下はフォームを開いたときに実行する基本例です。
開く時のイベントへ追加する手順
1. F_顧客をデザインビューで開き、F4でプロパティシートを表示します。
2. 選択対象を[フォーム]にし、[イベント]タブの[開く時]を確認します。
3. 空欄なら[イベントプロシージャ]を選び、右側のビルダーボタンからコード画面を開きます。
4. Form_Openの中にDoCmd.Maximizeを追加し、保存します。
5. フォームを閉じ、フォームビューで開き直して、表示領域が広がるかを確認します。
Private Sub Form_Open(Cancel As Integer)
DoCmd.Maximize
End Sub
すでにForm_Openがある場合は、新しい同名の手続きを丸ごと追加しません。既存の処理の目的を確認して、その中へ必要な1行を組み込みます。開く処理を中止する判定があるなら、その判定との実行順序も確認してください。既存の埋め込みマクロを上書きする操作も、元の機能を失う原因になります。

コードを書かない場合は最大化マクロを使う
VBAを使わない構成なら、フォームの開く時の埋め込みマクロなどで、最大化のアクション『MaximizeWindow』を設定する方法もあります。日本語の表示名は環境により異なるため、説明とアクション名を照合してください。VBAとマクロを重ねて入れる必要はありません。現在のフォームの実装に合う方を選びます。
処理が動かない場合は、イベントが設定されているか、コードのエラーで途中停止していないか、ファイルが組織のルールに沿って信頼されているかを確認します。すべてのマクロを無条件で有効にする設定へ変えるのではなく、そのファイルの出所と実行環境を確認してください。Accessの版や配布形式によって編集できる範囲も異なります。
開く時とアクティブ時を混同しない
開く時の処理は、フォームを開くタイミングに合わせるためのものです。画面へ戻るたびに呼ばれるイベントへ最大化を入れると、利用者が自分でサイズを戻しても、切り替え時に再び広がる場合があります。毎回広げる必要がある業務なのか、初回だけでよいのかを決めてからイベントを選びましょう。
4. ポップアップと作業ウィンドウ固定を理解する
[ポップアップ]と[作業ウィンドウ固定]は、最大化のために必ず両方を[はい]へ変える設定ではありません。前者は他のAccessウィンドウより前に表示する性質、後者はそのフォームを閉じるまで他のAccessウィンドウの操作を制限する性質に関係します。画面の大きさと、画面間の操作ルールを分けて考えます。
| 設定・操作 | 主な役割 | 適した判断例 |
|---|---|---|
| DoCmd.Maximize | アクティブなウィンドウを広げる | 通常入力フォームを広く使いたい |
| ポップアップ(PopUp) | 他のAccessウィンドウより前に表示する | 補助画面を前面へ出したい |
| 作業ウィンドウ固定(Modal) | 他のAccessウィンドウの操作を制限する | 確認を終えるまで元の操作へ戻したくない |

確認ダイアログのように、回答を終えるまで他の画面へ移ってほしくない場合は、Modalの利用に意味があります。一方、顧客情報と履歴を見比べる日常画面で無条件に固定すると、他の画面をクリックできず、操作が止まったように感じる場合があります。画面を大きくする目的だけで、操作制限まで追加しないことが大切です。
ポップアップフォームは、通常フォームの最大化状態と同じ扱いになるとは限りません。Microsoftの説明でも、通常のウィンドウを最大化した際に他のウィンドウへ及ぶ挙動には、ポップアップの例外があります。既存フォームがポップアップなら、まずその理由を確認し、サイズ、表示位置、閉じるボタンを個別にテストします。
通常フォームと確認ダイアログが混在し、設定を変えると別の画面が操作できなくなる場合は、画面名と開く順番を整理してください。Accessの教科書へ相談する際も、表示の大きさに加え、どの画面を同時に使いたいかを共有すると、必要な修正範囲を判断しやすくなります。
5. アンカーで入力欄とボタンを配置する
ウィンドウを広げた後は、アンカーで部品の位置や伸び方を調整します。アンカーは、フォームのサイズ変更に合わせてコントロールを移動・拡張するための設定です。例えば住所欄を横へ伸ばし、閉じるボタンを右下へ寄せる、といった使い方ができます。文字そのものを自動で拡大する設定とは区別してください。
| 部品 | 調整の考え方 | 確認する点 |
|---|---|---|
| 住所など長い入力欄 | 水平方向に伸ばす設定を検討 | 狭い画面でもラベルと重ならない |
| 明細の一覧・サブフォーム | 上下左右の広がりに合わせる | 下側の操作ボタンを隠さない |
| 保存・閉じるボタン | 下側や右側に合わせて移動させる | 画面を縮めても押せる |
| 見出し・短いコード欄 | 必要なら位置やサイズを固定 | 無意味に横長にならない |
1. 対象フォームをデザインビューまたは対応するレイアウトビューで開きます。
2. 調整するコントロールを1つ選びます。
3. [配置]などのリボンから[アンカー]を確認し、目的に合う配置を選びます。
4. フォームビューへ戻し、ウィンドウを広げたり狭めたりして動きを確認します。
5. ラベルや隣接する部品と重ならないことを確認し、同じ方針の部品へ広げます。

コントロールがレイアウトのグループに入っている場合、関連する部品にも配置の影響が出ることがあります。一つの入力欄だけを変えたつもりでも、ラベルや同じ列の部品が動く場合があるため、変更前の状態を記録してから試してください。自由配置にするためにレイアウトを解除する場合も、整列の管理方法を決めてから行います。
フォームの最大化、アンカー、文字サイズは役割が異なります。文字が小さく読みにくい場合は、フォントサイズ、入力欄の高さ、ラベルの幅を一緒に調整します。環境によって利用できる表示倍率の機能もありますが、最大化だけで文字まで拡大されるとは考えません。利用者が読む距離や操作する端末に合わせて確認してください。
画面を広く使うために情報を詰め込みすぎると、入力の順序が分かりにくくなります。必須項目を先に並べ、補足情報はタブや別画面へ分ける案も有効です。横スクロールを前提にするより、利用する最も狭い画面で主要な操作を完了できる構成を目指します。
6. 別のパソコンで崩れる場合の確認と復元
他のPCでボタンが隠れるときは、ディスプレイの大きさだけでなく、解像度、Windowsの表示倍率、Access本体の大きさを比べます。同じ解像度でも表示倍率が異なると、使える作業領域や見え方が変わる場合があります。ノートPCと外部モニターを切り替える運用も、実際の使い方に合わせて試してください。

| 症状 | 先に確認するもの | 対応 |
|---|---|---|
| フォームだけ広がらない | タブ表示か、通常フォームか | 表示方式に合う方法を選ぶ |
| 最大化コードが動かない | イベント設定・エラー・信頼状態 | 実行されているか確認する |
| 余白だけが広がる | アンカーと部品サイズ | 入力欄やボタンの配置を調整 |
| 他の画面を操作できない | Modalやダイアログの開き方 | 操作制限が必要か再判断 |
| 別PCで下のボタンが隠れる | 解像度・表示倍率・作業領域 | 最小の利用条件に合わせて配置 |

元のウィンドウサイズへ戻す操作を用意する
通常フォームのウィンドウを元のサイズへ戻すには、ウィンドウの復元操作、またはDoCmd.Restoreを使います。例えば『元のサイズ』ボタンのクリック時に次のコードを設定できます。ただし、元々タブ表示で運用していた設定へ戻すには、データベースオプションの表示方式も戻し、必要に応じて開き直します。
Private Sub cmdRestore_Click()
DoCmd.Restore
End Sub
復元してもすぐに再び最大化される場合は、アクティブ時などのイベントに最大化処理が残っていないか確認します。通常ウィンドウの最大化状態が他のオブジェクトの表示にも影響することがあるため、入力画面だけでなく、メニュー、検索結果、確認ダイアログを順に開いて確かめてください。
・フォームを開いた直後に、必要な入力欄とボタンが見える。
・大きい画面・狭い画面の両方で、保存と閉じる操作ができる。
・別フォームへの切り替えや戻る操作が、意図せず制限されない。
・最大化と復元を繰り返しても、部品が重なったり画面外へ出たりしない。
・変更したプロパティ・イベント・確認端末を記録し、変更前へ戻せる。

まずAccess本体とフォームを分けて広げ、次にアンカーや文字サイズを整えると、原因を混同せずに改善できます。最後は画面の見た目だけでなく、入力・保存・移動・終了まで一連の操作を確認します。画面いっぱいに表示する目的は、業務で必要な情報を読み取り、迷わず操作できる状態を作ることです。
7. よくある質問
DoCmd.Maximizeは、アクティブなAccessのオブジェクトウィンドウを広げる命令です。Windows上のAccessアプリケーション本体を最大化する操作とは分けて考えます。本体が小さいままなら、通常フォームを最大化しても使える領域は限られます。まずAccess本体の最大化ボタンを使い、その後でフォームの表示を確認してください。タブ表示の場合はすでに作業領域へ収まっていることがあるため、部品の配置調整が必要かも見直します。
最大化のために両方を必ず[はい]へする必要はありません。ポップアップは前面表示、作業ウィンドウ固定は他のAccessウィンドウの操作制限に関係する設定です。通常の入力フォームを広く使うだけなら、まず通常フォームの表示方式と最大化を確認します。確認が終わるまで他の操作を止めたい画面では固定に意味がありますが、一覧を見比べる業務では不便になる場合があります。画面の大きさと、画面間の操作ルールを別々に決めてください。
最大化が広げるのはウィンドウの領域なので、入力欄や文字が同じ割合で拡大されるとは限りません。入力欄を横へ伸ばしたい場合はアンカーや幅の設定、文字が小さい場合はフォントサイズと欄の高さを確認します。ラベルやボタンも一緒に調整し、文字だけ大きくして切れないようにしてください。最初は1つの部品で試し、広い画面と狭い画面の両方で確認します。表示領域の拡大と部品の配置、文字の読みやすさを分けると、設定箇所を絞れます。
タブ付きドキュメントでは、通常フォームはタブとして作業領域に表示されるため、最大化コードを追加しても改善が小さい場合があります。まずAccess本体が広がっているか、入力欄やボタンが固定サイズのままではないかを確認してください。複数のウィンドウを重ねて使いたいなら表示方式の変更を検討しますが、データベース全体の操作にも影響します。目的が単に入力しやすくすることなら、現在のタブ表示を保ち、部品の配置を整える方法もあります。
対応するマクロの最大化アクションを、フォームの開く時などへ設定する方法があります。公式資料ではMaximizeWindowというアクション名で説明されています。日本語の表示名は使用環境で確認してください。既存の埋め込みマクロがある場合は、その処理を上書きしないように注意します。VBAとマクロの両方を入れる必要はなく、現在の構成に合う方を選びます。どちらを使っても、最大化と入力欄・文字の大きさの調整は別の作業になります。
通常のオブジェクトウィンドウでは、1つを最大化すると他のウィンドウの表示にも最大化状態が及ぶ挙動があります。ポップアップは別扱いのため、すべての画面が同じようになるとは限りません。特定のフォームだけの問題と決めず、メニュー、検索画面、帳票などを順番に開いて確認してください。また、各フォームのイベントに最大化処理が入っていないかも調べます。復元する場合はDoCmd.Restoreやウィンドウの復元操作を使い、戻った後の操作も試します。
解像度、Windowsの表示倍率、Access本体のサイズ、利用モニターを比べてください。画面サイズのインチ数だけでは、実際に使える領域を判断できません。特に下側や右側のボタンは、狭い作業領域で隠れやすくなります。アンカーと部品配置を調整し、利用する最も狭い条件で保存・閉じる操作ができるか確認します。外部モニターを使う場合は、取り外した後の表示も試してください。利用者の倍率を無理に下げる前に、画面設計で改善できるかを検討します。
通常ウィンドウの大きさを戻すには、復元ボタンまたはDoCmd.Restoreを使います。表示方式をタブ付きから重なり合うウィンドウへ変更した場合は、データベースオプションも元へ戻し、必要に応じて開き直してください。最大化処理がイベントに残っていると再度広がることがあるため、追加したコードやマクロも確認します。部品の配置まで変更した場合は、変更前のコピーと比較して戻します。設定値と変更箇所を記録しておくと、復元範囲を判断しやすくなります。
基本用語や関連操作を確認したい場合は、次の記事もあわせてご覧ください。
自分で設定できる範囲は、コピー環境で確認しながら進められます。複数の帳票・端末・業務データに影響する場合は、現在の状態と期待する結果、利用中のAccessの版を整理してご相談ください。
参考情報
Microsoft|DoCmd.Maximize
https://learn.microsoft.com/en-us/office/vba/api/access.docmd.maximize
Microsoft|DoCmd.Restore
https://learn.microsoft.com/en-us/office/vba/api/access.docmd.restore
Microsoft|Form.PopUp
https://learn.microsoft.com/en-us/office/vba/api/access.form.popup
Microsoft|Form.Modal
https://learn.microsoft.com/en-us/office/vba/api/access.form.modal
Microsoft|Make controls stretch shrink or move
https://support.microsoft.com/en-au/access/make-controls-stretch-shrink-or-move-as-you-resize-a-form
Microsoft|Show or hide object tabs
https://support.microsoft.com/en-us/access/show-or-hide-object-tabs
Microsoft|MaximizeWindow macro action
https://learn.microsoft.com/en-us/office/client-developer/access/desktop-database-reference/maximizewindow-macro-action