ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   VBA (https://www.excelbanter.com/excel-discussion-misc-queries/247886-vba.html)

Brown Recluse[_2_]

VBA
 
Trying to circumvent the conditional format limit of 3 in Excel 03. I have
a file with various percents and want to color code each percent threshold.
For instance, if it is 60 to 75% color code it 27 (excel color code). This
is what I have, but it is not working ~ hair loss is immenent:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

Set MyPage = Range(("$e$2:$bn$63"), "%0")
For Each Cell In MyPage

If Cell.Value = 0 Then
Cell.Interior.ColorIndex = 15
Else
If Cell.Value 76 < 89 Then
Cell.Interior.ColorIndex = 35
Else
If Cell.Value 89 Then
Cell.Interior.ColorIndex = 43
Else
If Cell.Value 60 < 75 Then
Cell.Interior.ColorIndex = 27
Else
If Cell.Value 50 < 60 Then
Cell.Interior.ColorIndex = 45
Else
If Cell.Value 1 < 50 Then
Cell.Interior.ColorIndex = 45
End If

Next
--
Regards

Lars-Åke Aspelin[_2_]

VBA
 
On Sun, 8 Nov 2009 14:01:39 -0800, Brown Recluse
wrote:


Trying to circumvent the conditional format limit of 3 in Excel 03. I have
a file with various percents and want to color code each percent threshold.
For instance, if it is 60 to 75% color code it 27 (excel color code). This
is what I have, but it is not working ~ hair loss is immenent:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

Set MyPage = Range(("$e$2:$bn$63"), "%0")
For Each Cell In MyPage

If Cell.Value = 0 Then
Cell.Interior.ColorIndex = 15
Else
If Cell.Value 76 < 89 Then
Cell.Interior.ColorIndex = 35
Else
If Cell.Value 89 Then
Cell.Interior.ColorIndex = 43
Else
If Cell.Value 60 < 75 Then
Cell.Interior.ColorIndex = 27
Else
If Cell.Value 50 < 60 Then
Cell.Interior.ColorIndex = 45
Else
If Cell.Value 1 < 50 Then
Cell.Interior.ColorIndex = 45
End If

Next


Try this macro:

Private Sub Worksheet_Change(ByVal Target As Range)
Set MyPage = Range("$E$2:$BN$63")
For Each cell In MyPage
If cell.Value = 0 Then cell.Interior.ColorIndex = 15
If cell.Value = 1 Then cell.Interior.ColorIndex = 45
If cell.Value = 50 Then cell.Interior.ColorIndex = 45
If cell.Value = 60 Then cell.Interior.ColorIndex = 27
If cell.Value = 76 Then cell.Interior.ColorIndex = 35
If cell.Value = 89 Then cell.Interior.ColorIndex = 43
Next
End Sub

Hope this helps / Lars-Åke

Gary''s Student

VBA
 
Build MyPage as follows:

Set MyPage = Nothing
For Each r In Range("E2:BN63")
If r.NumberFormat = "0%" Then
If MyPage Is Nothing Then
Set MyPage = r
Else
Set MyPage = Union(MyPage, r)
End If
End If
Next


Then use it in your For loop.
--
Gary''s Student - gsnu200908


"Brown Recluse" wrote:

Trying to circumvent the conditional format limit of 3 in Excel 03. I have
a file with various percents and want to color code each percent threshold.
For instance, if it is 60 to 75% color code it 27 (excel color code). This
is what I have, but it is not working ~ hair loss is immenent:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

Set MyPage = Range(("$e$2:$bn$63"), "%0")
For Each Cell In MyPage

If Cell.Value = 0 Then
Cell.Interior.ColorIndex = 15
Else
If Cell.Value 76 < 89 Then
Cell.Interior.ColorIndex = 35
Else
If Cell.Value 89 Then
Cell.Interior.ColorIndex = 43
Else
If Cell.Value 60 < 75 Then
Cell.Interior.ColorIndex = 27
Else
If Cell.Value 50 < 60 Then
Cell.Interior.ColorIndex = 45
Else
If Cell.Value 1 < 50 Then
Cell.Interior.ColorIndex = 45
End If

Next
--
Regards


Brown Recluse[_2_]

VBA
 
Thanx for the reply, I'll give it a shot ~ :)
--
Regards


"Gary''s Student" wrote:

Build MyPage as follows:

Set MyPage = Nothing
For Each r In Range("E2:BN63")
If r.NumberFormat = "0%" Then
If MyPage Is Nothing Then
Set MyPage = r
Else
Set MyPage = Union(MyPage, r)
End If
End If
Next


Then use it in your For loop.
--
Gary''s Student - gsnu200908


"Brown Recluse" wrote:

Trying to circumvent the conditional format limit of 3 in Excel 03. I have
a file with various percents and want to color code each percent threshold.
For instance, if it is 60 to 75% color code it 27 (excel color code). This
is what I have, but it is not working ~ hair loss is immenent:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer

Set MyPage = Range(("$e$2:$bn$63"), "%0")
For Each Cell In MyPage

If Cell.Value = 0 Then
Cell.Interior.ColorIndex = 15
Else
If Cell.Value 76 < 89 Then
Cell.Interior.ColorIndex = 35
Else
If Cell.Value 89 Then
Cell.Interior.ColorIndex = 43
Else
If Cell.Value 60 < 75 Then
Cell.Interior.ColorIndex = 27
Else
If Cell.Value 50 < 60 Then
Cell.Interior.ColorIndex = 45
Else
If Cell.Value 1 < 50 Then
Cell.Interior.ColorIndex = 45
End If

Next
--
Regards



All times are GMT +1. The time now is 03:44 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com