GoToControl マクロ アクション

Access デスクトップ データベースと Access Web アプリケーションでGoToControl/コントロールの移動マクロ アクションを使用すると、開いているフォーム、フォーム データシート、テーブル データシート、またはクエリ データシートの現在のレコードで、指定のフィールドまたはコントロールにフォーカスを移動できます。特定のフィールドまたはコントロールにフォーカスを設定したいときに、このアクションを使用できます。このフィールドやコントロールは、比較やFindRecord/レコードの検索クションに使用できます。また、このアクションを使用すると、特定の条件に従ってフォーム内を移動することができます。たとえば、ユーザーが医療保険フォームの [既婚] コントロールに [いいえ] を入力した場合に、フォーカスを自動的に [配偶者名] コントロールをスキップして次のコントロールに移動させることができます。

設定

GoToControl/コントロールの移動アクションの引数は次のとおりです。

アクションの引数

説明

コントロール名

フォーカスするフィールドまたはコントロールの名前を入力します。これは必須の引数です。

注: Access デスクトップ データベースを使用している場合、[Control Name/コントロール名] 引数には、[Forms]![Products]![Product ID] のような完全修飾識別子ではなく、フィールド名またはコントロール名だけを入力します。

解説

GoToControl/コントロールの移動マクロ アクションを使用して、非表示のフォーム上のコントロールにフォーカスを移動することはできません。

ヒント:  GoToControl/コントロールの移動マクロ アクションを使用して、コントロールの一種である サブフォーム に移動することはできます。そして、GoToRecord アクションを使用して、サブフォーム内の特定のレコードに移動できます。GoToControl/コントロールの移動アクションを使用してサブフォーム上のコントロールに移動して、最初にサブフォームに移動してから、サブフォーム上のコントロールに移動することもできます。

Visual Basic for Applications (VBA) モジュールでGoToControl/コントロールの移動マクロ アクションを実行するには、DoCmd オブジェクトの GoToControl メソッドを使用します。SetFocus メソッドを使用して、フォーカスをフォーム上またはそのサブフォーム上のコントロール、または開いているテーブル、クエリ、またはフォーム データシート内のフィールドに移動することもできます。

マクロを使用してコントロールの値を設定する

次のマクロでは、[仕入先] フォームのボタンから [商品の追加] フォームを開きます。Echo/エコーClose/閉じるOpenForm/フォームを開くSetValue/値の代入、および GoToControl/コントロールの移動 の各アクションの使い方を説明します。SetValue/値の代入 アクションでは、[商品] フォームの [仕入先コード] コントロールに、[仕入先] フォームの現在の仕入先を設定します。GoToControl/コントロールの移動 アクションで、[仕入先コード] フィールドにフォーカスを移動し、そこで新しい製品のデータを入力できます。このマクロは、[仕入先] フォームの [商品の追加] ボタンに設定します。

アクション

引数: 設定

コメント

Echo

Echo On/エコーの設定: いいえ

マクロの実行中に画面の更新を停止します。

Close/閉じる

Object Type/オブジェクトの種類: フォーム

Object Name/オブジェクト名: 製品/サービス項目の一覧

Save/保存:いいえ

製品/サービス項目の一覧フォームを閉じます。

OpenForm/フォームを開く

"Form Name/フォーム名":商品

View/ビュー: フォーム

Data Mode/データ モード: Add/追加

Window Mode/ウィンドウモード: 標準

[商品] フォームを開きます。

"SetValue/値の代入"

"Item/アイテム": [Forms]![商品]![仕入先コード]

"":仕入先コード

[仕入先コード] コントロールに [仕入先] フォームの現在の仕入先を設定します。

GoToControl/コントロールの移動

"Control Name/コントロール名":商品コード

[商品コード] コントロールに移動します。

マクロを使ってデータを検証する

次の検証マクロでは、サプライヤー フォームに入力された郵便番号を確認します。 このマクロで、StopMacroMessageBoxCancelEventGoToControl の各アクションの使い方を示します。 条件式により、フォームのレコードに入力された国や地域および郵便番号を確認します。 郵便番号が、その国や地域の正しい形式になっていない場合は、メッセージ ボックスを表示して、レコードの保存をキャンセルします。 その後、郵便番号コントロールに戻って、誤りを訂正できるようにします。 このマクロは、サプライヤー フォームの BeforeUpdate プロパティに設定します。

条件

操作

引数: 設定

コメント

IsNull([CountryRegion]) の場合

StopMacro

CountryRegion が Null である場合は、郵便番号を検証できません。

[CountryRegion] In ("France","Italy","Spain") And Len([Postal Code]) <> 5 の場合

MessageBox/メッセージ ボックス

メッセージ: 郵便番号は 5 文字でなければなりません。

警告音: "はい"

メッセージの種類: 情報

タイトル: 郵便番号エラー

郵便番号が 5 文字でない場合は、メッセージが表示されます。

CancelEvent

イベントがキャンセルされます。

GoToControl/コントロールの移動

Control Name: PostalCode

[CountryRegion] In ("Australia","Singapore") And Len([Postal Code]) <> 4 の場合

MessageBox/メッセージ ボックス

メッセージ: 郵便番号は 4 文字でなければなりません。

警告音: "はい"

メッセージの種類: 情報

タイトル: 郵便番号エラー

郵便番号が 4 文字でない場合は、メッセージが表示されます。

CancelEvent

イベントがキャンセルされます。

GoToControl/コントロールの移動

Control Name: PostalCode

([CountryRegion] = "Canada") And ([Postal Code] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]") の場合

MessageBox/メッセージ ボックス

メッセージ: 郵便番号が無効です。 カナダの郵便番号の例: H1J 1C3

警告音: "はい"

メッセージの種類: 情報

タイトル: 郵便番号エラー

カナダの郵便番号が正しくない場合は、メッセージが表示されます。 (カナダの郵便番号の例: H1J 1C3)

CancelEvent

イベントがキャンセルされます。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×