こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Private sub の使い方

Private Sub Worksheet_Activate()
Dim ANS As Integer
ANS = MsgBox("Bをクリアしてもいいですか?", _
vbYesNo + vbInformation, "クリア実行")
If Sheets("B").Range("D6").Value <> "" Then
Select Case ANS
Case vbYes
Sheets("営業確認").Range("D6:E1000").Select
Selection.ClearContents
Sheets("入力").Select
MsgBox "クリアしました"
Case vbNo
MsgBox "キャンセル"
End Select
Else
End If
End Sub

質問
『A』のシートを開いた時に『B』のシートのD6に値があれば、MsgBoxを出すようにしたく上記のマクロを組みましたが、値が無くてもMsgBoxが表示されてしまいます。
どこがおかしいのかアドバイスをお願いします。

投稿日時 - 2009-12-10 23:20:32

QNo.5513312

すぐに回答ほしいです

質問者が選んだベストアンサー

>ANS = MsgBox("Bをクリアしてもいいですか?", _
>vbYesNo + vbInformation, "クリア実行")
>If Sheets("B").Range("D6").Value <> "" Then

ではなく

>If Sheets("B").Range("D6").Value <> "" Then
>ANS = MsgBox("Bをクリアしてもいいですか?", _
>vbYesNo + vbInformation, "クリア実行")

としてはどうでしょうか。

投稿日時 - 2009-12-11 00:09:45

お礼

ありがとうございます。
無事解決しました。

投稿日時 - 2009-12-11 00:29:08

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問