[PR]ネットとスマホ まとめておトク!

 下記のコードをWorkSheetで2つ反映させるにはどうしたらいいでしょうか?どちらか一つなら反映するのはわかりますが、どう名前を変更すればいいのかお教え願えませんでしょうか?

windows7・SP1 Office2010

Private Sub WorkSheet_Change(ByVal Target As Range)

If Intersect(Target, Range("C1")) Is Nothing Then Exit Sub '検査範囲

Application.EnableEvents = False '再帰実行の停止

If Range("C1").Value <> Sheets("祝祭日").Range("A1").Value Then
MsgBox ("祝日の設定を反映するため年度を同じにしてください。")
End If

Application.EnableEvents = True

End Sub

Private Sub WorkSheet_Change(ByVal Target As Range)

Dim MyRow As Long
Dim MyCol As Integer
MyRow = Target.Row
MyCol = Target.Column

With Worksheets("メイン・1").Select
If MyRow = 1 And MyCol = 7 Then
If Target = 4 Then 'または If Target = 1 Then
メインデータの復元 '動かしたいマクロ名
End If
End If
End With
End Sub

A 回答 (3件)

No2です。


一部コード抜けを訂正しました。

Private Sub WorkSheet_Change(ByVal Target As Range)
With Target
If .Count > 1 Then End
Select Case .Address(0, 0)
Case "C1"
If .Value <> Sheets("祝祭日").Range("A1").Value Then
MsgBox ("祝日の設定を反映するため年度を同じにしてください。")
End If
Case "G1"
If .Value = 4 Or .Value = 1 Then
メインデータの復元 '動かしたいマクロ名
End If
End Select
End With
End Sub
    • good
    • 0
この回答へのお礼

御丁寧な解答ありがとうございます。事なきを得ました。やはりお教えくだされたようになりますね。

本当に有難うございました。

お礼日時:2013/04/19 08:35

まとめるとこんな感じです。



Private Sub WorkSheet_Change(ByVal Target As Range)
With Target
If .Count > 1 Then End
Select Case .Address(0, 0)
Case "C1"
If .Value <> Sheets("祝祭日").Range("A1").Value Then
MsgBox ("祝日の設定を反映するため年度を同じにしてください。")
End If
Case "G1"
If .Value = 4 Or .Value = 1 Then
メインデータの復元 '動かしたいマクロ名
End If
End Select
End Sub
    • good
    • 0

こんにちは!



>Dim MyRow As Long
>Dim MyCol As Integer
>MyRow = Target.Row
>MyCol = Target.Column
の部分と
>If MyRow = 1 And MyCol = 7 Then
を見ると、結局G1セルのコトですよね?

C1・G1セルがTargetの場合にマクロを実行するようにしてみてはどうでしょうか?

If Application.Intersect(Target, Range("C1,G1")) Is Nothing Then Exit Sub
If Target.Address = "$C$1" Then
'最初のマクロ実行
Else
'2番目のマクロを実行
End If

といった具合で・・・

※ 検証していませんので外していたらごめんなさいね。m(_ _)m
    • good
    • 0
この回答へのお礼

 やはりWorkSheet_Changeは1つだけになりますね。お陰様でできました。ありがとうございます。

お礼日時:2013/04/19 08:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング