Microsoft Access Club >AccessTips >このページ >次頁 < 前項  サイト内検索


マクロで条件分岐を行う方法:AccessTips063



マクロはAccessに対して作業の自動化を含め、いろいろな機能を提供してくれます。 特に、マクロ画面で適切な項目を選択するだけのシンプルな構成が万人受けするのでしょう。VBAとマクロ、これを尽きる事のないテーマですが、VBAの専売特許である条件分岐をマクロでも簡易なものならば用いることができます。

マクロ内でMsgbox関数

マクロファンの方は、使いこなしましょう。下記サンプルは、Msgbox関数を用いて、ユーザーに選択させる一例です。

マクロの記述は下記のようになっています。<>は否定を行います。このサンプルの場合は、[キャンセル]ボタンがクリックされたときに 真 になります。

MsgBox関数は決められた数値を返します。この詳細は下記のとおりです。Accessヘルプから引用しました。

Msgbox関数の設定値

名前付き引数 buttons には、次の値のうち、該当する値の合計値を指定します。
定数		値	内容
vbOKOnly	0	[OK] ボタンのみを表示します。
vbOKCancel	1	[OK] ボタンと [キャンセル] ボタンを表示します。
vbAbortRetryIgnore	2	[中止]、[再試行]、
				および [無視] の 3 つのボタンを表示します。
vbYesNoCancel	3	[はい][いいえ][キャンセル] の3つのボタンを表示します。
vbYesNo	4	[はい] ボタンと [いいえ] ボタンを表示します。
vbRetryCancel	5	[再試行] ボタンと [キャンセル] ボタンを表示します。
vbCritical	16	
vbQuestion	32	問い合わせメッセージ アイコンを表示します。
vbExclamation	48	注意メッセージ アイコンを表示します。
vbInformation	64	情報メッセージ アイコンを表示します。
vbDefaultButton1	0	第 1 ボタンを標準ボタンにします。
vbDefaultButton2	256	第 2 ボタンを標準ボタンにします。
vbDefaultButton3	512	第 3 ボタンを標準ボタンにします。
vbDefaultButton4	768	第 4 ボタンを標準ボタンにします。
vbApplicationModal	0	アプリケーション モーダルに設定します。
                        メッセージ ボックスに応答するまで、
                        現在選択中のアプリケーションの実行を継続できません。
vbSystemModal	4096	システム モーダルに設定します。
                  	メッセージ ボックスに応答するまで、
			すべてのアプリケーションが中断されます。
  1. 最初のグループに属する値 (0 〜 5) は、ダイアログ ボックスに表示されるボタンの種類と個数を指定します。
  2. 次のグループに属する値 (16、32、48、64) は、アイコンの種類を指定します。
  3. 第 3 のグループに属する値 (0、256、512) は、どのボタンが標準ボタンになるかを指定します。
  4. 最後のグループに属する値 (0、4096) は、メッセージ ボックスがモーダルかどうかを指定します。
  5. 名前付き引数 buttons の値を設定するには、各グループから値を 1 つずつ選択して加算した合計値を指定します。

サンプルでは17とありますので、上記の表で 1+16=17 ですから、[OK] ボタンと [キャンセル] ボタン、+ 警告メッセージ アイコンを表示します。

Msgbox関数の戻り値

定数		値	説明
vbOK		1	[OK]
vbCancel	2	[キャンセル]
vbAbort		3	[中止]
vbRetry		4	[再試行]
vbIgnore	5	[無視]
vbYes		6	[はい]
vbNo		7	[いいえ]

戻り値とは、Msgbox関数が返す値です。サンプルでは、[OK] と [キャンセル] の組み合わせですから、[OK] がクリックされれば 1 を、[キャンセル] がクリックされれば 2 が返されます。

マクロの条件欄にピリオドを3個続ける(...)

[キャンセル]ボタンがクリックされたので、マクロアクションはマクロの停止を実行します。また、条件欄にピリオドを3個続けると、その上記条件 内容と同様であることを意味します。このサンプルでは、「戻り値が 1 である場合に限って…」という意味になります。

留意点

マクロの条件欄に記述できる文字数は、半角で255文字までになります。この文字数をオーバーすると、自動的に削除されます。この点は、VBAと 大きく違うところです。

 2002/01/22

ページの先頭へ 前ページへ戻る

 


マクロで条件分岐を行う方法:AccessTips063


 

-Microsoft Access Club-