ユーザー インターフェイス マクロを作成して Access アプリのビューをカスタマイズする
適用先
Access for Microsoft 365 Access 2019 Access 2016 Access 2013
Access Web アプリのユーザー インターフェイス (UI) マクロを使用すると、別のビューを開く、フィルターを適用する、新しいレコードを作成するなどのアクションを実行できます。 "埋め込み" UI マクロには、コマンド ボタン、コンボ ボックス、アクション バー ボタン オブジェクトなどのユーザー インターフェイス オブジェクトに直接アタッチする"埋め込み" UI マクロと、マクロ オブジェクトに含まれる "スタンドアロン" UI マクロの 2 種類があります。
コードの重複を防ぐため、スタンドアロンの UI マクロは他のマクロから呼び出して再利用します。 スタンドアロン UI マクロはナビゲーション ウィンドウの [ マクロ] の下に表示できますが、そこから直接実行することはできません。 埋め込みの UI マクロからスタンドアロンの UI マクロを実行するには、"マクロの実行" アクションを使用します。
注
この記事は、Access デスクトップ データベースには適用されません。
Access Web アプリで埋め込みの UI マクロを作成する
Access Web アプリの埋め込みの UI マクロはボタンのクリック、コンボ ボックスでのアイテムの選択、ビューの読み込みなどの特定のイベントがビューで発生したときに実行されます。 マクロは、埋め込まれているビューまたはコントロールの一部になります。
Access Web アプリのコントロールやビューで UI マクロを埋め込むことができるイベントは、次のとおりです。
| イベント タイプ | 発生するタイミング |
|---|---|
| 更新後処理 | データをコントロールに入力するか、アイテムをリスト コントロールから選んだ後に発生します。 |
| クリック時 | コントロールを選んだときに発生します。 |
| レコード移動時 | ユーザーがビューの別のレコードに移るときに発生します。 |
| 読み込み時 | ビューを開いたときに発生します。 |
また、リスト ビューと空のビューで各コントロールがサポートしているイベントは次のとおりです。
| コントロールまたはオブジェクト タイプ | サポートされるイベント |
|---|---|
| アクション バーのボタン | クリック時 |
| オートコンプリート | 更新後処理、クリック時 |
| ボタン | クリック時 |
| チェック ボックス | 更新後処理 |
| コンボ ボックス | 更新後処理 |
| ハイパーリンク | 更新後処理、クリック時 |
| 画像 | クリック時 |
| ラベル | クリック時 |
| 複数行のテキスト ボックス | 更新後処理、クリック時 |
| テキスト ボックス | 更新後処理、クリック時 |
| ビュー | レコード移動時、読み込み時 |
注
- Access Web アプリの概要ビューでは、カスタム コントロールを追加する機能をサポートしていません。このため、この種類のビューではユーザー インターフェイス マクロをコントロールに追加することはできません。
- データシート ビューでは、更新後処理のコントロール イベントをサポートしていません。 リスト ビューと空のビューにあるコントロールの更新後処理のコントロール イベントで、マクロ ロジックを定義できるだけです。
- Web ブラウザー コントロール、サブビュー コントロール、関連アイテム コントロールでは、どのビューのイベントもサポートしていません。
Access Web アプリで埋め込み UI マクロを作成する方法を次に示します。
- マクロを埋め込むコントロールを選びます。
- [アクション] ボタンをクリックします。 カスタム アクションの [アクション] ダイアログ ボックスが開きます。
- マクロを埋め込むイベントをクリックします。 マクロのデザイン ビューに空のマクロが表示され、ここにアクションを追加できます。
Access Web アプリでスタンドアロンの UI マクロを作成する
- [ ホーム>Advanced>Macro] をクリックします。
マクロのデザイン ビューに空のマクロが表示され、ここにアクションを追加できます。 - [保存] をクリックします。 [マクロ名] ボックスにマクロ名を入力し、[OK] をクリックします。
Access Web アプリで UI マクロを作成するときのヒント
このヘルプは円滑な処理に役立ちます。
- マクロのフィールドを参照するには、[TableName].[FieldName] の形式を使います。 たとえば、[Tasks].[Due Date] は "期限" フィールドを参照し、[Tasks].[Status] は "状態" フィールドを参照します。 ビューがクエリに基づいている場合は、保存したクエリ オブジェクトの名前を入力します。 たとえば、ビューのレコード ソースが MyQuery というクエリである場合、クエリの "Due Date" フィールドを参照するには [MyQuery].[Due Date] を使用します。
- 埋め込み UI マクロを作成する前に、作業中に他のタブに切り替えることができないため、使用する予定のテーブル、フィールド、コントロールの名前を書き留めます。
- 一部のマクロ アクションの引数では、式をサポートしています。 マクロ アクション引数に式を使用する場合は、引数ボックスの最初の位置に = 記号を入力します。 引数で式をサポートしている場合は、引数ボックスの右側に [式ビルダー] ボタンが表示されます。
- 保存はこまめに行いましょう。