8

CommandButton を押すと、「これらの変更を元に戻すことはできません。続行する前にコピーを保存することをお勧めします。続行しますか?」というポップアップが表示されるようにしたいと考えています。

そして、次の 3 つのオプションが必要です。

  1. はい - ポップアップ ウィンドウが閉じられ、コマンド ボタン マクロが実行されます
  2. いいえ - ポップアップ ウィンドウを閉じ、何も変更しません
  3. 保存 - ポップアップ ウィンドウを閉じ、[名前を付けて保存] を開きます (マクロは実行されません)。

どこから始めればいいのかよくわかりません。手を貸していただけますか?

どうもありがとうございます。

4

2 に答える 2

9

マクロの先頭にコードを配置して、この質問をして回答に応答することをお勧めします。

これは次のようになります。

Sub YourMacro()

  if MsgBox("These changes cannot be undone. It is advised to save a copy before proceeding. Do you wish to proceed?", vbYesNo + vbQuestion) = vbNo then
    exit sub
  end if

  ... the rest of your macro.

これはユーザーに保存オプションを提供しないことに注意してください。標準の MsgBox ではできません。これを行うには、独自のユーザーフォームを作成し、MsgBox の代わりにそれを表示して、ユーザーが押したユーザーフォームのボタンに応答する必要があります。これは、MsgBox を使用するよりもはるかに手間がかかりますが、UI を凝ったものにしたい場合は、それだけの価値があるかもしれません。

于 2013-05-30T14:56:29.777 に答える