アプリ版:「スタンプのみでお礼する」機能のリリースについて

以前にも似たようなご質問をしましたが、回答して頂いた内容が私では解らなかったので再度させて頂きます。
“クエリ”を実行させる前に『「本当に実行しますか?」とメッセージを表示させて、「yes」なら実行させて「no」なら実行させない』という仕組みを「マクロ」で作れないのでしょうか?

私が作成した方法は
マクロの
1行目
「アクション」のとこで「メッセージボックス」を選択し、アクションの引数「メッセージ」の箇所に「本当に実行しますか?」と入力。
2行目
「アクション」のとこで「クエリを開く」を選択し、アクションの引数「クエリ名」の箇所に「●●クエリ(任意のクエリ)」と入力。
そして保存します。

そのマクロを実行させても「本当に実行しますか?」のメッセージが出て、「OK」のボタンしか表示されないんです。
(当たり前なのかもしれませんが…)
そしてその「OK」をESCキーで回避してもクエリが実行されてしまいます。
(当たり前なのかもしれませんが…)

上記の知識しかありません。どなたか柔らかくご説明して頂けないでしょうか?よろしくお願い致します。

A 回答 (3件)

自分はマクロをほとんど使わないので、VBA風になりますが・・・



条件付のマクロにする([表示]→[条件])

1行目
条件:MsgBox("本当に実行しますか?",4)<>6
アクション:全マクロの中止

2行目以降 Yes の場合の処理

こんな感じで出来ると思います。


4 とか 6 とかは、VBAの定数です。
VBA内では vbYes 等の名前で参照しますが、マクロ中では使えないと思いますので、直接数字を書きます。

幾つか定数を書いておきます。
(VBAのヘルプの MsgBoxを調べれば詳しく書いてます。)

1 vbOKCancel [OK] ボタンと [キャンセル] ボタンを表示します。
4 vbYesNo   [はい] ボタンと [いいえ] ボタンを表示します。

アイコンを表示するなら、上記の数字+下記の数字

16 vbCritical   警告メッセージ アイコンを表示します。
32 vbQuestion   問い合わせメッセージ アイコンを表示します。
48 vbExclamation 注意メッセージ アイコンを表示します。
64 vbInformation 情報メッセージ アイコンを表示します。

例:注意アイコン付き Yes/No :4 + 48 = 52
  MsgBox(""本当に実行しますか?",52)<>6 となります。

戻り値の定数

1 vbOK
2 vbCancel
6 vbYes
7 vbNo

6 は Yes です。
<>6 でYesでなければ、中止・・・となります。
    • good
    • 1
この回答へのお礼

やってみたらできました!ホント身震いするくらい感動です!!ありがとーございました

お礼日時:2007/05/01 09:55

すみません、venzouさんの回答の通りなのですが・・・greentea69さんに


本当にお伝えしなければならない部分への触れ方があまりにもあっさりしていて
見過ごされてしまいそうな気がしたので、お節介ながら補足させて戴きます。

> 条件付のマクロにする([表示]→[条件])
というのは、マクロをデザインビューで開いたときのメニューから、「表示(V)」の
「条件(C)」をクリックして、「条件」欄を表示させる、ということです。

「アクション」欄の「メッセージボックス」というのは、メッセージを表示させるため
だけのもので、今回のご質問のように場合分けをする際には、MsgBox関数を
「条件」欄で使用する必要があります。
(なお、「『はい』ならマクロAを、『いいえ』ならマクロBを、それぞれ実行」といった
 ような動作をさせる場合は、フォーム上にテキストボックス(「可視」を「いいえ」
 に設定)を作成し、「値の代入」アクションで「式」にMsgBox関数を、「アイテム」
 にそのテキストボックスをそれぞれ指定して、「条件」欄には
 「Forms!フォーム名!テキストボックス名=6」といった式を入れるようにします。
 ・・・これは、今後の参考までに)
    • good
    • 1
この回答へのお礼

すっごい参考になりました!今後、Access使用するのに幅が広がりそうです(^^)V

お礼日時:2007/05/01 09:53

こんな感じかな。



If MsgBox("本当に実行しますか?」", vbYesNo) = vbYes Then
'クエリを実行
End If
    • good
    • 3
この回答へのお礼

すんません。pkh4989さんのご回答の意味が理解しきれませんでした(;;)でもわざわざありがとうございました。またお願いします

お礼日時:2007/05/01 09:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A