|
初めまして、知恵をお借りしたくて投稿致しました。
過去ログを検索しても出てこなかったので助けて頂けば幸いです。
当方VBAはほぼ初心者で現在行おうとする処理なのですが…
特定列、例えばE列2行目に"土"の文字が入った場合2行目のEFGHセルをあらかじめ指定されている色で背景色をつけたい場合の処理が解らず困っております。
それを2行目であれば2行目の、3行目のであれば3行目のEFGH列を塗りつぶしたいのです。
それを20行目まで反映させたいと思っております。
E以外については「土曜日」という文字列は入りません。別の言葉が入るため複数セルを選んでの条件分岐が使えずVBAで処理しようとしております。
他不明瞭な点について記載致しますとEに入る文字列は"土"or"日"、これはプルダウンメニューから選択させております。
現状作ってみたコードは以下のようになっております。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngCel As Range
Dim intIdx As Integer
'処理の対象となるセル範囲
'一行目はindexが存在してるため2行目以降指定
Set TargetArea = Intersect(Range("E2:E20"), Target)
'背景色カラーインデックスを条件分岐で定義
Select Case rngCel.Value
Case "土": intIdx = 33
Case "日": intIdx = 38
Case Else: intIdx = 0
End Select
'背景色を変更※
Range(rngCel.Offset(0, -1), rngCel) _
.Interior.ColorIndex = intIdx
Next rngCel
End If
End Sub
色々調べてはおりますが、どうすれば望んだ処理になるか行き詰っております…。
ヒントだけでも頂ければ有難いです。宜しくお願いします。
|
|