Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11782 / 13646 ツリー ←次へ | 前へ→

【14155】CLOSEする時のメッセージについて WAKO 04/5/22(土) 11:06 質問[未読]
【14168】Re:CLOSEする時のメッセージについて つん 04/5/22(土) 13:34 発言[未読]
【14173】Re:CLOSEする時のメッセージについて WAKO 04/5/22(土) 13:51 質問[未読]
【14174】Re:CLOSEする時のメッセージについて つん 04/5/22(土) 14:06 回答[未読]
【14199】Re:CLOSEする時のメッセージについて WAKO 04/5/23(日) 14:41 お礼[未読]

【14155】CLOSEする時のメッセージについて
質問  WAKO  - 04/5/22(土) 11:06 -

引用なし
パスワード
   みなさんこんにちは

エクセルマクロで、右上の X ボタン(閉じる)を
押した時に、マクロで、"変更を保存しますか、YES,NO"
のメッセージを出しています。
このメッセージは、ThisWorkBookのbefore_close
に書いています.このメッセージにキャンセルを追加
しても、閉じてしまいます。
閉じないようにする事は可能でしょうか。
また、右上の X ボタンを無効にする事はできるでしょうか。
その場合、Apprication.Quit は反応するでしょうか

どなたか知っていれば教えて下さい。
よろしくお願いします。

【14168】Re:CLOSEする時のメッセージについて
発言  つん E-MAIL  - 04/5/22(土) 13:34 -

引用なし
パスワード
   >エクセルマクロで、右上の X ボタン(閉じる)を
>押した時に、マクロで、"変更を保存しますか、YES,NO"
>のメッセージを出しています。
>このメッセージは、ThisWorkBookのbefore_close
>に書いています.このメッセージにキャンセルを追加
>しても、閉じてしまいます。
>閉じないようにする事は可能でしょうか。
>また、右上の X ボタンを無効にする事はできるでしょうか。

メッセージボックスを表示したあとの処理をどうしていますか?
返り値で判断して、「Cancel = True」
しないと閉じてしまうと思いますが。

ところで気になってるんですが、
半角カタカナを使ってはりますね。
今のところ、ちゃんと表示されているようですが、
通常、Web上では半角カタカナは御法度です。
文字化けする可能性があるからです。
以後、気を付けてくださいね。

【14173】Re:CLOSEする時のメッセージについて
質問  WAKO  - 04/5/22(土) 13:51 -

引用なし
パスワード
   ▼つん さん:
すいません、書き方が分からないのですが、

'メッセージ出力
res = MsgBox("処理選択画面に戻ります。変更を保存されますか? ", vbYesNoCancel)
このように書いていますが、

Cancel = True を書くだけでいいのでしょうか。
しょうもない質問で申し訳ないです。


>>エクセルマクロで、右上の X ボタン(閉じる)を
>>押した時に、マクロで、"変更を保存しますか、YES,NO"
>>のメッセージを出しています。
>>このメッセージは、ThisWorkBookのbefore_close
>>に書いています.このメッセージにキャンセルを追加
>>しても、閉じてしまいます。
>>閉じないようにする事は可能でしょうか。
>>また、右上の X ボタンを無効にする事はできるでしょうか。
>
>メッセージボックスを表示したあとの処理をどうしていますか?
>返り値で判断して、「Cancel = True」
>しないと閉じてしまうと思いますが。
>
>ところで気になってるんですが、
>半角カタカナを使ってはりますね。
>今のところ、ちゃんと表示されているようですが、
>通常、Web上では半角カタカナは御法度です。
>文字化けする可能性があるからです。
>以後、気を付けてくださいね。

【14174】Re:CLOSEする時のメッセージについて
回答  つん E-MAIL  - 04/5/22(土) 14:06 -

引用なし
パスワード
   WAKO さん

>'メッセージ出力
>res = MsgBox("処理選択画面に戻ります。変更を保存されますか? ", vbYesNoCancel)
>このように書いていますが、
>
>Cancel = True を書くだけでいいのでしょうか。
>しょうもない質問で申し訳ないです。

Private Sub Workbook_BeforeClose(Cancel As Boolean)

  Dim res As Long
  
  res = MsgBox("処理選択画面に戻ります。変更を保存されますか? ", vbYesNoCancel)
  
  If res = vbCancel Then
    Cancel = True
    MsgBox "キャンセルします"
  End If

End Sub

こうかな・・・これでファイルを閉じる処理は阻止されますが・・

【14199】Re:CLOSEする時のメッセージについて
お礼  WAKO  - 04/5/23(日) 14:41 -

引用なし
パスワード
   ▼つん さん:
ありがとうございます。
おかげさまでうまくいきました。
今後ともよろしくお願いそます。


▼つん さん:
>WAKO さん
>
>>'メッセージ出力
>>res = MsgBox("処理選択画面に戻ります。変更を保存されますか? ", vbYesNoCancel)
>>このように書いていますが、
>>
>>Cancel = True を書くだけでいいのでしょうか。
>>しょうもない質問で申し訳ないです。
>
>Private Sub Workbook_BeforeClose(Cancel As Boolean)
>
>  Dim res As Long
>  
>  res = MsgBox("処理選択画面に戻ります。変更を保存されますか? ", vbYesNoCancel)
>  
>  If res = vbCancel Then
>    Cancel = True
>    MsgBox "キャンセルします"
>  End If
>
>End Sub
>
>こうかな・・・これでファイルを閉じる処理は阻止されますが・・

11782 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free