|
▼Statis さん:
こんにちは。
何度もすいません。ありがとうございます。
いただいたコードを参考に追加してみて、私が望むエラー処理を入れてみたのですが、いまいち思い通りになりません。
正しい日付や最大値を入れなかった場合にはエラーメッセージを出し、セルの移動をさせないとともに、この処理を止めたいのです。
サブルーチン1_creategraphへ処理を回したくないのです。
ブレイクポイントを設定している時の様に処理を止めて、正しい値が入ったら処理を続行するというような手法はあるのでしょうか?
この考え方はちょっとおかしいのかもしれませんが・・・
Private Sub Worksheet_Change(ByVal Target As Range)
Dim onDate As Variant
Dim ofDate As Variant
Dim maxvalue As Variant
Application.EnableEvents = False
onDate = Worksheets("Sheet1").Range("B1").Value
ofDate = Worksheets("Sheet1").Range("D1").Value
maxvalue = Worksheets("Sheet1").Range("G1").Value
On Error GoTo End_Len
With Target
If onDate Or ofDate Or maxvalue Then
If maxvalue = "" Then
MsgBox "最大値を入れてください"
Worksheets("Sheet1").Range("G1").Activate
End If
If onDate = "" Then
MsgBox "日付を入れてください"
Worksheets("Sheet1").Range("B1").Activate
End If
If ofDate = "" Then
MsgBox "日付を入れてください"
Worksheets("Sheet1").Range("C1").Activate
End If
If onDate > ofDate Then
MsgBox "正しい日付を入力してください"
Worksheets("Sheet1").Range("B1").Activate
Else
End If
1_creategraph
End If
End With
On Error GoTo 0
End_Len:
Application.EnableEvents = True
End Sub
以上よろしくお願い致します。
|
|