|
初心者です。。。
特定の場所のセルに名称を入力すると、その下にある一覧表の同じ文字の色を変更したり、セルを塗りつぶしたりしたいのです。
大変困っています。
特定の場所というのは、一覧表の見出し風に作っているセルで、複数あり、空欄にしてあります。
その入力するセルの場所により、一覧の中の一致する文字色を変更したり、セルを塗りつぶすという、下記のようないくつかの作業がしたいのです。
◎ 文字色や塗りつぶしをしたい一覧データはE11〜AH74の範囲にあり、関数の値で 表示されています。
◎ セルの塗りつぶし
E2のセルに入力した文字と一覧表の関数の値が一致すればセルをピンクに塗り つぶし、F2ではオレンジ、G2は黄色、H2は緑
◎ 文字色の変更
J2〜L4の12個のセルに入力した文字に一致すれば赤文字
N2〜Q5の16個のセルに入力した文字に一致すれば青文字
にしたいのです。
自分なりに調べて、よく分からないのですが、似たようなものを参考に作ったのですが、なんともなりません。
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Target '内容を比較
Case ("E2")
Target.Interior.ColorIndex = 7 '塗りつぶしをピンク
Target.Font.ColorIndex = 0 '文字色を黒
Case ("F2")
Target.Interior.ColorIndex = 46 '塗りつぶしをオレンジ
Target.Font.ColorIndex = 0 '文字色を黒
Case ("G2")
Target.Interior.ColorIndex = 6 '塗りつぶしを黄色
Target.Font.ColorIndex = 0 '文字色を黒
Case ("H2")
Target.Interior.ColorIndex = 4 '塗りつぶしを緑色
Target.Font.ColorIndex = 0 '文字色を黒
Case ("J2:L4")
Target.Interior.ColorIndex = xlNone '塗りつぶしを自動
Target.Font.ColorIndex = 3 '文字色を赤
Case ("N2:Q5")
Target.Interior.ColorIndex = xlNone '塗りつぶしを自動
Target.Font.ColorIndex = 5 '文字色を青
End Select
End Sub
悪いところを修正?(全くダメなのかも。。。)して頂けると助かります。
それと、VBAが完成した場合、
シートのタブを右クリックしてコードに貼り付ける
だけでいいのでしょうか?
VBAの前にタブを入れて頭を下げる
などの事も色々見ましたが、よく分からなかったので、そういった基本的なご指導もして頂きたいのです。
こんなややこしい作業ですが、どうかよろしくお願いします。m(_ _)m
|
|