Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Excel 2003 with 6 Conditional Formatting

Hello,

I have rows of data ( a1:e1, a2:e2, a3:e3, etc.) I would like to put a
letter in column (f1: f100) that would change the background color of that
row of data ( a1:e1)

I think i have to use a WorkSheet_change event. I've found the following
code but don't understand how to change the background color for the row of
data. If i put R in f1 the row a1:e1 would change to red background.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

If Not Intersect(Target, Range("F1:F100")) is Nothing Then

Select Case Target

Case Is = R
icolor = Red

Case Is =G
icolor = Green

Case Is = B
icolor = Blue

Case Is = Y
icolor = Yellow

Case Is = M
icolor = Magenta

Case Is = C
icolor = Cyan


End Select


Target.Interior.ColorIndex = icolor

End If


End Sub

Thanks
Brian

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Excel 2003 with 6 Conditional Formatting

Maybe

Target.entirerow.Interior.ColorIndex = icolor
(for the entire column)

or

Target.entirerow.resize(1,5).interior.colorindex = icolor

I find this a little more self-documenting:
Target.entirerow.cells(1).resize(1,5).interior.col orindex = icolor

And don't you mean vbRed or is Red declared somewhere else?
(same with the other constants, too.)

Brian wrote:

Hello,

I have rows of data ( a1:e1, a2:e2, a3:e3, etc.) I would like to put a
letter in column (f1: f100) that would change the background color of that
row of data ( a1:e1)

I think i have to use a WorkSheet_change event. I've found the following
code but don't understand how to change the background color for the row of
data. If i put R in f1 the row a1:e1 would change to red background.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

If Not Intersect(Target, Range("F1:F100")) is Nothing Then

Select Case Target

Case Is = R
icolor = Red

Case Is =G
icolor = Green

Case Is = B
icolor = Blue

Case Is = Y
icolor = Yellow

Case Is = M
icolor = Magenta

Case Is = C
icolor = Cyan

End Select

Target.Interior.ColorIndex = icolor

End If

End Sub

Thanks
Brian


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,836
Default Excel 2003 with 6 Conditional Formatting

I spliced together some code that I had saved from a long time ago, and came
up with this:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim WatchRange As Range
Dim CellVal As String

If Target.Cells.count 1 Then Exit Sub
If Target = "" Then Exit Sub
CellVal = Target
Set WatchRange = Range("F1:F100") 'change to suit

If Not Intersect(Target, WatchRange) Is Nothing Then
Set T = Target
codes = Array("R", "G", "B", "Y", "M", "C")
valuess = Array(3, 4, 5, 6, 7, 8)
v = T.Value
For i = 0 To 5
If v = codes(i) Then
Application.EnableEvents = False
T.EntireRow.Interior.ColorIndex = valuess(i)
Application.EnableEvents = True
Exit Sub
End If
Next
End If

End Sub

It is event Code; it runs under the sheet. Basically, right-click on your
sheet and pop the code into the window that opens.

HTH,
Ryan---

--
Ryan---
If this information was helpful, please indicate this by clicking ''Yes''.


"Dave Peterson" wrote:

Maybe

Target.entirerow.Interior.ColorIndex = icolor
(for the entire column)

or

Target.entirerow.resize(1,5).interior.colorindex = icolor

I find this a little more self-documenting:
Target.entirerow.cells(1).resize(1,5).interior.col orindex = icolor

And don't you mean vbRed or is Red declared somewhere else?
(same with the other constants, too.)

Brian wrote:

Hello,

I have rows of data ( a1:e1, a2:e2, a3:e3, etc.) I would like to put a
letter in column (f1: f100) that would change the background color of that
row of data ( a1:e1)

I think i have to use a WorkSheet_change event. I've found the following
code but don't understand how to change the background color for the row of
data. If i put R in f1 the row a1:e1 would change to red background.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

If Not Intersect(Target, Range("F1:F100")) is Nothing Then

Select Case Target

Case Is = R
icolor = Red

Case Is =G
icolor = Green

Case Is = B
icolor = Blue

Case Is = Y
icolor = Yellow

Case Is = M
icolor = Magenta

Case Is = C
icolor = Cyan

End Select

Target.Interior.ColorIndex = icolor

End If

End Sub

Thanks
Brian


--

Dave Peterson

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Conditional Formatting - Excel 2003 Neil Holden Excel Discussion (Misc queries) 2 February 4th 10 11:44 AM
conditional formatting in excel 2003 GrouchyMammy Excel Worksheet Functions 5 April 13th 09 03:05 AM
Conditional formatting in Excel 2003 Bruce McGinnis Excel Discussion (Misc queries) 3 October 16th 08 12:20 AM
Conditional Formatting - Excel 2003 Dan Excel Discussion (Misc queries) 3 September 9th 08 04:43 PM
Conditional formatting excel 2003 [email protected] Excel Worksheet Functions 1 April 14th 08 11:43 AM


All times are GMT +1. The time now is 06:53 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"