
下記のコードを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
No.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
No.2
- 回答日時:
まとめるとこんな感じです。
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
No.1
- 回答日時:
こんにちは!
>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
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA セル間のリンク修正につい...
-
【マクロ】並び替えの範囲が、...
-
Vba セルの4辺について罫線が有...
-
Vba Array関数について教えてく...
-
算術演算子「¥」の意味について
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】開いているブックの...
-
【マクロ】シートの変数へ入れ...
-
Excelのマクロについて教えてく...
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
不要項目の行削除方法について
-
【マクロ】売上一覧YYYYMMDDHHS...
-
改行文字「vbCrLf」とは
-
VBAでエクセルのテキストデータ...
-
VBA Application.Matchについて...
-
Excelのマクロについて教えてく...
-
ExcelVBA修正のお願い
-
VBAでCOPYを繰り返すと、処理が...
-
vba textboxへの入力について教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
複数のExcelファイルをマージす...
-
【ExcelVBA】5万行以上のデー...
-
vbsでのwebフォームへの入力制限?
-
vba textboxへの入力について教...
-
Vba セルの4辺について罫線が有...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
Vba Array関数について教えてく...
-
【ExcelVBA】値を変更しながら...
-
【マクロ】開いているブックの...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルのマクロについて教え...
-
エクセルの改行について
-
VBA 入力箇所指定方法
-
[VB.net] ボタン(Flat)のEnable...
-
VBAでセルの書式を変えずに文字...
-
vb.net(vs2022)のtextboxのデザ...
-
Excelのマクロについて教えてく...
-
改行文字「vbCrLf」とは
おすすめ情報