Page 750 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼ユーザーフォームの”×”ボタンについて taka 03/2/15(土) 20:55 ┗Re:ユーザーフォームの”×”ボタンについて りん 03/2/15(土) 21:27 ┗Re:ユーザーフォームの”×”ボタンについて ぴかる 03/2/15(土) 21:44 ┗Re:ユーザーフォームの”×”ボタンについて taka 03/2/16(日) 15:20 ─────────────────────────────────────── ■題名 : ユーザーフォームの”×”ボタンについて ■名前 : taka ■日付 : 03/2/15(土) 20:55 -------------------------------------------------------------------------
基本的なことなのかもしれませんが、ご教授御願いします。 ユーザーフォームの右上の“×”マークをクリックすると ユーザーフォームが閉じられるだけだと思いますが、 これをクリックした時にダイアログで“上書きしますか?”、“はい”、“いいえ” というのを表示し、どちらを選んでも エクセルを終了出来るようにしたいのですが、 こんなことは可能でしょうか? |
taka さん、こんばんわ。 >ユーザーフォームの右上の“×”マークをクリックすると >ユーザーフォームが閉じられるだけだと思いますが、 >これをクリックした時にダイアログで“上書きしますか?”、“はい”、“いいえ” >というのを表示し、どちらを選んでも >エクセルを終了出来るようにしたいのですが、 フォームのQueryCloseイベントを使います。 Private Sub CommandButton1_Click() 'コマンドボタンで閉じる時は保存・終了しないのを試すために配置 Me.Hide End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = 0 Then If MsgBox("上書きしますか?", vbYesNo) = vbYes Then _ ThisWorkbook.Save 'エクセル終了 Application.Quit End If End Sub |
takaさん、りんさん、こんばんは。 夜勤中のぴかるです。設備故障がない限り、今晩はどっぷりマクロにつかるつもりです。 りんさんよりちょっち遅れましたが、せっかく作ったので私のも掲載させてもらいます。 Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) Dim タイトル As String Dim スタイル As String Dim メッセージ As String Dim YESNO As String If CloseMode <> vbFormCode Then メッセージ = "終了させるでぇ〜!" & vbLf & _ "上書きさせるか?。" スタイル = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal タイトル = " 【 保存どうする? 】" YESNO = MsgBox(メッセージ, スタイル, タイトル) If YESNO = vbYes Then ActiveWorkbook.Save End If Application.DisplayAlerts = False '警告メッセージオフにする Application.Quit End If End Sub |
りんさん、ぴかるさん ありがとうございます。 みなさんほんとにすごいですね! 私はまだVBA初心者なのでまた分からないことがあったら ご教授よろしくお願いしますm(__)m |