ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Conditional Formatting in a Loop (https://www.excelbanter.com/excel-programming/312375-conditional-formatting-loop.html)

lost!!

Conditional Formatting in a Loop
 
Hi there,

I'm trying to use a loop to copy a conditional format from row to row. The
conditional format is to compare row A### to the row above and the row below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result is not
the same the colour should change. Here is the code I have used (it's very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help either.

The format is copying but only looking at the data in row 26.

Please help!!!

Tom Ogilvy

Conditional Formatting in a Loop
 
This puts in the conditional format your code appears to want to put in. If
I am in A26, I am not sure why I would check A27 and A28, so I am not sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 = $A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 = $A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to row.

The
conditional format is to compare row A### to the row above and the row

below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result is

not
the same the colour should change. Here is the code I have used (it's

very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help either.

The format is copying but only looking at the data in row 26.

Please help!!!




lost!!

Conditional Formatting in a Loop
 
thanks....I tried what you suggested (copied it directly into my code) but it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066 =
$A64067 and the second part shows as ="$A27 = $A28". The D to F comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put in. If
I am in A26, I am not sure why I would check A27 and A28, so I am not sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 = $A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 = $A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to row.

The
conditional format is to compare row A### to the row above and the row

below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result is

not
the same the colour should change. Here is the code I have used (it's

very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help either.

The format is copying but only looking at the data in row 26.

Please help!!!





Tom Ogilvy

Conditional Formatting in a Loop
 
Try this one:

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26=$A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A27=$A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.Offset(0, 3)(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
thanks....I tried what you suggested (copied it directly into my code) but

it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066 =
$A64067 and the second part shows as ="$A27 = $A28". The D to F

comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put in.

If
I am in A26, I am not sure why I would check A27 and A28, so I am not

sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 = $A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 = $A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to row.

The
conditional format is to compare row A### to the row above and the row

below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result

is
not
the same the colour should change. Here is the code I have used (it's

very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help

either.

The format is copying but only looking at the data in row 26.

Please help!!!







useless at looping!

Conditional Formatting in a Loop
 
Thank You!! that worked....well sort of.

I made one change so that if $a26 = $a25
next $a26 = $a27
so that it checks the line above and the line below.

the only problem is it only changes the color of one of the duplicates. for
example:
a26 JOHN SMITH
a27 JOHN SMITH
a28 JOHN SMITH

in the example shown above, only A27 & A28 are the highlighted colour. Do
you know how I would get it to change A26 as well?
"Tom Ogilvy" wrote:

Try this one:

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26=$A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A27=$A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.Offset(0, 3)(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
thanks....I tried what you suggested (copied it directly into my code) but

it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066 =
$A64067 and the second part shows as ="$A27 = $A28". The D to F

comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put in.

If
I am in A26, I am not sure why I would check A27 and A28, so I am not

sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 = $A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 = $A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to row.
The
conditional format is to compare row A### to the row above and the row
below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result

is
not
the same the colour should change. Here is the code I have used (it's
very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help

either.

The format is copying but only looking at the data in row 26.

Please help!!!







useless at looping!

Conditional Formatting in a Loop
 
PLEASE DISREGARD MY LAST MESSAGE.

IT WORKS OKAY NOW.

THANKS SO MUCH FOR YOUR HELP!!!!!!

"Tom Ogilvy" wrote:

Try this one:

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26=$A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A27=$A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.Offset(0, 3)(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
thanks....I tried what you suggested (copied it directly into my code) but

it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066 =
$A64067 and the second part shows as ="$A27 = $A28". The D to F

comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put in.

If
I am in A26, I am not sure why I would check A27 and A28, so I am not

sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 = $A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 = $A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to row.
The
conditional format is to compare row A### to the row above and the row
below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result

is
not
the same the colour should change. Here is the code I have used (it's
very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help

either.

The format is copying but only looking at the data in row 26.

Please help!!!







lost!!

Conditional Formatting in a Loop
 
Hi again,

hopefully this is the last question...is there anyway to use the three
conditions together?
Like if D26< F26 and A26= A27 for equation 1 and
D26<F26 and A26=A25 for equation 2?


"Tom Ogilvy" wrote:

Try this one:

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26=$A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A27=$A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.Offset(0, 3)(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
thanks....I tried what you suggested (copied it directly into my code) but

it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066 =
$A64067 and the second part shows as ="$A27 = $A28". The D to F

comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put in.

If
I am in A26, I am not sure why I would check A27 and A28, so I am not

sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 = $A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 = $A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to row.
The
conditional format is to compare row A### to the row above and the row
below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the result

is
not
the same the colour should change. Here is the code I have used (it's
very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help

either.

The format is copying but only looking at the data in row 26.

Please help!!!







Tom Ogilvy

Conditional Formatting in a Loop
 
Untested, but try this:

Sub CCC
Dim rng as Range
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A27,$D26<$F26)"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A25,$D26<$F26)"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A27,$D26<$F26)"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A25,$D26<$F26)"
.FormatConditions(2).Interior.ColorIndex = 35
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
Hi again,

hopefully this is the last question...is there anyway to use the three
conditions together?
Like if D26< F26 and A26= A27 for equation 1 and
D26<F26 and A26=A25 for equation 2?


"Tom Ogilvy" wrote:

Try this one:

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression,

Formula1:="=And($A26=$A27,$D26<$F26)"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression,

Formula1:="=AND($A26=$A25",$D26<$F26)"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.Offset(0, 3)(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
thanks....I tried what you suggested (copied it directly into my code)

but
it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066

=
$A64067 and the second part shows as ="$A27 = $A28". The D to F

comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put

in.
If
I am in A26, I am not sure why I would check A27 and A28, so I am

not
sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 =

$A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 =

$A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to

row.
The
conditional format is to compare row A### to the row above and the

row
below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the

result
is
not
the same the colour should change. Here is the code I have used

(it's
very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression,

Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:=

_
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help

either.

The format is copying but only looking at the data in row 26.

Please help!!!









lost!!

Conditional Formatting in a Loop
 
WORKED PERFECTLY!!!! THANKS SO MUCH FOR YOUR HELP!!!!

"Tom Ogilvy" wrote:

Untested, but try this:

Sub CCC
Dim rng as Range
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A27,$D26<$F26)"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A25,$D26<$F26)"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A27,$D26<$F26)"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=AND($A26=$A25,$D26<$F26)"
.FormatConditions(2).Interior.ColorIndex = 35
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
Hi again,

hopefully this is the last question...is there anyway to use the three
conditions together?
Like if D26< F26 and A26= A27 for equation 1 and
D26<F26 and A26=A25 for equation 2?


"Tom Ogilvy" wrote:

Try this one:

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
rng(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression,

Formula1:="=And($A26=$A27,$D26<$F26)"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression,

Formula1:="=AND($A26=$A25",$D26<$F26)"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.Offset(0, 3)(1).Select
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy

"lost!!" wrote in message
...
thanks....I tried what you suggested (copied it directly into my code)

but
it
didn't work.
I need to check a27 & a28 because I am looking for duplicate entries.
earlier in my code I have column A being sorted alphabetically.

For the col A comparison, the first part of the code shows as =$A64066

=
$A64067 and the second part shows as ="$A27 = $A28". The D to F
comparison
looks the same as the first A - 64066.

sorry if I'm being thick.....
"Tom Ogilvy" wrote:

This puts in the conditional format your code appears to want to put

in.
If
I am in A26, I am not sure why I would check A27 and A28, so I am

not
sure
that is the right formula, but you wrote it.

Sub BBB()
Set rng = Range(Range("A26"), Range("A26").End(xlDown))
With rng
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:="=$A26 =

$A27"
.FormatConditions(1).Interior.ColorIndex = 35
.FormatConditions.Add Type:=xlExpression, Formula1:="$A27 =

$A28"
.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
With .Offset(0, 3).Resize(, 3)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=$D26<$F26"
.FormatConditions(1).Interior.ColorIndex = 39
End With
End With
End Sub

--
Regards,
Tom Ogilvy


"lost!!" wrote in message
...
Hi there,

I'm trying to use a loop to copy a conditional format from row to

row.
The
conditional format is to compare row A### to the row above and the

row
below
- if a duplicate is found then the colour should change.
The next part is to compare the value in D## to F## and if the

result
is
not
the same the colour should change. Here is the code I have used

(it's
very
simple since I'm just new at programming):

' check to see if row is equal to row above or below
'
Range("A26").Select
While ActiveCell.Value < ""
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression,
Formula1:="=$A$26 =
$A$27"
Selection.FormatConditions(1).Interior.ColorIndex = 35
Selection.FormatConditions.Add Type:=xlExpression,
Formula1:="$A$27 =
$A$28"
Selection.FormatConditions(2).Interior.ColorIndex = 35
'
' check to see if rate charged was incorrect - compare d & f
'
ActiveCell.Offset(0, 3).Range("A1:C1").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:=

_
"=$D26<$F26"
Selection.FormatConditions(1).Interior.ColorIndex = 39
ActiveCell.Offset(1, -3).Range("A1").Select
Wend

I have tried removing the $ from the format but that didn't help
either.

The format is copying but only looking at the data in row 26.

Please help!!!











All times are GMT +1. The time now is 01:38 PM.

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