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

解決済みの質問

エクセル VBA セルの色をSheet1とSheet2の両方を変えたいのですが・・・

最近困っているところが表題の通りなのですが
Sheet1のB2を右クリックするとB2のセルの色を変えて
Sheet2のB2のセルも色を変えたいというものです。
現状で

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

Dim Rng As Range, myRng As Range
Dim RngA As Range, myRngA As Range


Set Rng = Range("B3:W3,b7:w8,b12:w12,d13:w13,d17:w18,d22:w23")
Set myRng = Intersect(Target, Rng)

If myRng.Interior.ColorIndex = xlColorIndexNone Then
myRng.Interior.ColorIndex = 37

Else
If myRng.Interior.ColorIndex = 37 Then
myRng.Interior.ColorIndex = 45

Else
myRng.Interior.ColorIndex = xlColorIndexNone
End If

End If
Cancel = True
End Sub

とここまではあるのですが、これをどう改造すればSheet2の同じセルの色もかわるのでしょうか?
宜しくお願いいたします

投稿日時 - 2008-02-01 14:30:44

QNo.3734016

すぐに回答ほしいです

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

試していませんが
 myRng.Interior.ColorIndex = 37
 Sheets("Sheet2").Range(myRng.Address).Interior.ColorIndex = 37
のようにしてみたらどうですか?

ただこのマクロは
 Set myRng = Intersect(Target, Rng)
の結果がNothingだとエラーになりそうです。

 If Not myRng Is Nothing Then
   色を変更する処理
 End If
にしたらよいと思います。

投稿日時 - 2008-02-01 15:05:50

お礼

お返事遅くなりましてすいません。
上記でばっちり動きました。
ありがとうございます!

投稿日時 - 2008-02-04 13:58:24

ANo.1

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

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

回答(1)

あなたにオススメの質問