Accessで起動時にメニューフォームを表示した後、ボタンをクリックして目的のフォームを開くようにしたいという要望はよくあります。
コマンドボタンをウィザードを使って、簡単にフォームを開くボタンを作成する方法を紹介します。
フォームは、[F_新規入力]と[F_売上管理]があります。
ここでは、[新規入力フォームを開く]ボタンをクリックすると、[F_新規入力]フォームが開くように作成します。
この記事の目次
開くフォームの[ポップアップ]と[作業ウィンドウ固定]を設定
まず、既存の[F_新規入力]フォームをデザインビューで開いて、プロパティの[その他]タブで[作業ウィンドウ固定]を[はい]にします。
[作業ウィンドウ固定]で[はい]を選択すると、フォームを閉じない限り別のオブジェクトに移ることはできません。
既定は[いいえ]になっています。
[いいえ]の箇所でダブルクリックすると[はい]になります。
設定が終わったら、保存して閉じておきます。
参考プロパティの[その他]タブにある[ポップアップ]と[作業ウィンドウの固定]については、以下の記事で解説しています。複数のフォームを扱う場合は、重要です。
フォームプロパティの[ポップアップ]と[作業ウィンドウ固定]
ウィンドウを重ねて表示する設定
また、ここでは[フォーム]タブの[オプション]をクリックして、[Accessのオプション]ダイアログボックスで[現在のデータベース]の[ドキュメントウィンドウオプション]で[ウィンドウを重ねて表示する]を選択しています。
[ウィンドウを重ねて表示する]と[タブ付きドキュメント]の違いについては、以下の記事で解説しています。
-
[タブ付きドキュメント]と[ウィンドウを重ねて表示する]の違い
Access2007以降、オブジェクトを表示すると、タブ付きウィンドウで表示されるようになっています。 昔からAccessを使用している方に ...
また、[オプション]ダイアログボックスは、アクセスキーを使用して[At]→[F]→[T]を押すと、表示できます。
メニューフォームをモーダルダイアログボックスから作成
メニューフォームを作成します。[作成]タブの[フォーム]グループにある[その他のフォーム]から[モーダルダイアログボックス]をクリックします。
必ず同じようにしなければならないわけではありません。メニュー用のフォームが作成できればOKです。
できるだけ簡単に作成できる方法を紹介しています。
下のように表示されます。
[OK]ボタンと[キャンセル]ボタンは選択して[Delete]キーで削除します。
そして、フォームのプロパティで[ポップアップ]の設定が[はい]になっていると思いますので、[いいえ]にします。
参考[ポップアップ]は、フォームをポップウィンドウとして、いつも前面に表示するかどうかの設定です。
また、[ポップアップ]が[いいえ]、[作業ウィンドウ固定]を[はい]にしていると、フォームビューに切り替えた時に[ナビゲーションウィンドウ]が閉じられます。
[ナビゲーションウィンドウ]を表示したままにしておきたい場合は、[作業ウィンドウ固定]を[いいえ]にします。
[コントロールウィザードの使用]が有効になっているかを確認
ここからコマンドボタンを作成していきますが、まず確認して欲しい箇所があります。
[デザイン]タブの[コントロール]グループにある[その他]ボタンをクリックします。
そして、[コントロールウィザードの使用]が有効になっているかどうかを確認します。
このボタンが有効になっていないと、ウィザードは使用できません。
既定では有効になっていますが、念のために確認してください。
[フォームを開く]コマンドボタンの作成
コントロールから[ボタン]をクリックして任意の場所でドラッグします。
下のように[コマンドボタンウィザード]が表示されます。
この後は、ウィザードの設問に従って進んでいきます。
[ボタンがクリックされたときに実行する動作を指定します。]とあります。
[種類]から[フォームの操作]をクリックします。
右側の[ボタンの動作]から[フォームを開く]を選択します。
そして、[次へ]のボタンをクリックします。
[コマンドボタンを使って開くフォームを選択してください。]とあります。
作成済みのフォームの名前が表示されるので、コマンドボタンを使って開くフォームを選択します。
ここでは、[F_新規入力]を選択して[次へ]ボタンをクリックします。
[フォームに表示するレコードを限定するかどうかを選択してください。]とあります。
既定では、[すべてのレコードを表示する]が選択されていると思いますので、そのまま[次へ]ボタンをクリックします。
[ボタンに表示する文字列またはピクチャを指定します。]とあります。
[文字列]か[ピクチャ]を選択するようになっていますが、これは完成後にプロパティで変更できます。
文字列もピクチャも両方を表示することもできます。
ここでは、文字列を選択して[新規入力フォームを開く]に書き換えます。
[次へ]ボタンをクリックします。
[ボタン名を指定してください。]とあります。
最後にコマンドボタンの名前を付けます。自動的に[コマンド2]などと付けられていますが、分かりやすい名前に変更しておくことをお勧めします。
[完了]ボタンをクリックします。
参考コマンドボタンウィザードの途中にある[フォームに表示するレコードを限定するかどうかを選択してください。]の画面で、[特定のレコードを表示する]を選択して作成する方法については、以下の記事で解説しています。
-
フォームに表示されている関連付けられたフィールドを別フォームで開く
単票フォームを開いているときに、その中のフィールドについて詳細を知りたいということがあります。 例えば、売上の単票フォームがあって、その売上 ...
コマンドボタンの位置や大きさの調整
完成したコマンドボタンの位置や大きさはドラッグで調整してください。
フォームのプロパティで[標題]を設定します。プロパティシートの[書式]タブにあります。
空白のままにしておくと、タイトルにはフォーム名が表示されますので注意してください。
ここでは、[メニューフォーム]にします。
コマンドボタンの動作確認
確認のために[表示]ボタンをクリックして、[フォームビュー]に切り替えて[新規入力フォームを開く]ボタンをクリックしてみてください。
デザインビューからフォームビューに切り替えるショートカットキーは[F5]キーです。
下のように[新規入力フォーム]が開くことを確認したら、[新規入力フォーム]は閉じます。
参考新規入力フォームでは、フォームのプロパティシートで[レコードセレクタ]と[移動ボタン]は[いいえ]にしています。
フォームに名前を付けて保存
メニューフォームに名前を付けて保存します。
キーボードから[F12]キーを押すと、[名前を付けて保存]ダイアログボックスが表示されます。
[F_menu]など分かりやすい名前を付けて保存します。
フォームを閉じると、ナビゲーションウィンドウに[F_menu]が表示されていると思います。
ナビゲーションウィンドウの[F_menu]をクリックすると、以下のようなフォームが表示されます。
他の既存フォームやレポートなどもこの[メニューフォーム]にコマンドボタンウィザードで同じように設置すると完成します。
参考起動時にメニューフォームを開く設定などは、以下の記事を参考にしてください。
-
起動時に特定のフォームを開いて開発用の機能を非表示にするには
Accessを起動したときに特定のフォームを開くようにするための設定です。 特にメニューフォームなどを作成したら設定が必要になりますね。 オ ...
起動時の設定はアプリケーションオプションで(Access2007)
また、ボタンの背景色やスタイルなどをカスタマイズする方法は、以下の記事で解説しています。
-
フォームとレポートに[書式]タブが追加されプロパティの設定が増えた
Access2010では、フォームやレポートのデザインビューが大きく変わっています。 [デザインツール]タブに[書式]タブが追加されて、Of ...
-
コマンドボタンのスタイル変更
Accessのフォームでコマンドボタンを作成して、そのコマンドボタンのスタイルを変更する方法です。 [書式]タブの[クイックスタイル]や[図 ...
コントロールウィザードで作成できるボタンの種類と動作
同じように、コントロールウィザードを使用して他のボタンも作成することができます。
【レコードの移動】には、以下の動作があります。
- レコードの検索
- 先頭のレコードに移動
- 前のレコードに移動
- 最後のレコードに移動
- 次のレコードに移動
- 次を検索
【レコードの操作】には、以下の動作があります。
- レコードの保存
- レコードの削除
- レコードの印刷
- レコードの複製
- レコードを元に戻す
- 新しいレコードの追加
【フォームの操作】には、以下の動作があります。
- カレントフォームの印刷
- フォームデータの再表示
- フォームフィルターの実行
- フォームの印刷
- フォームを閉じる
- フォームを開く
【レポートの操作】には、以下の動作があります。
- レポートのプレビュー
- レポートの印刷
- レポートの送信
- レポートをファイルに出力
- レポートを開く
【アプリケーション】には、[アプリケーションの終了]があります。
【その他】には、以下の動作があります。
- オートダイヤラー
- クエリの実行
- テーブルの印刷
- マクロの実行
クエリの実行は、作成済みのクエリを指定するだけなので便利です。アクションクエリも実行できます。
コマンドボタンウィザードで[クエリを実行]を選択して作成する方法は、以下の記事で解説しています。
-
作成したクエリをコマンドボタンに登録して実行する
Accessでクエリを作成した後、コマンドボタンをクリックしてクエリを実行するための方法です。 コマンドボタンウィザードを使用する方法と、マ ...
参考コマンドボタンは、ウィザードを使って作成すると簡単に作成できますが、注意しなければならないことがあります。
以下の記事で解説しています。
-
コマンドボタンウィザードによるボタン作成後の[埋め込みマクロ]について
Accessでは、ウィザードを使用して簡単にボタンを作成することができます。 これについては、ウィザードを使ったコマンドボタンの作成で解説し ...
フォームを開く独立マクロを作成して、コマンドボタンを作成する方法も紹介しています。
-
独立マクロを作成してフォームを開くボタンを設置
Accessで作成済みのフォームを、ボタンをクリックして開くようにする方法です。 ここでは、独立マクロを作成してボタンに登録する方法を解説し ...
マクロビルダーを起動して、埋め込みマクロを作成する方法も解説しています。
-
ボタンをクリックしてフォームを開く(マクロビルダーで設定)
Accessで作成済みのフォームを、ボタンをクリックして開くようにする方法です。 ここでは、[ビルダーの選択]ダイアログボックスで[マクロビ ...
コマンドボタンウィザードを使用して、単票フォームに表示されている関連付けられたフィールドを別フォームで開く方法も解説しています。
-
フォームに表示されている関連付けられたフィールドを別フォームで開く
単票フォームを開いているときに、その中のフィールドについて詳細を知りたいということがあります。 例えば、売上の単票フォームがあって、その売上 ...