Home |
Search |
Today's Posts |
|
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Font/CellInteriorColour
I am comparing font colour with cell interior colour.
When I colour the font black and use a black interior, the function returns a true value. When I colour the font white, against a white cell interior, I get an error. Should I be using color.index instead? Or am I running into a problem with one of the colours being xlColorIndexAutomatic. If so, How do I ensure that the comparison compares like numeric values to create the correct boolean value for the funtion? Public Function CellHasSameFontAndInteriorColour(rng As Range) Dim FontColour As Integer Dim InteriorColour As Integer With rng FontColour = .Font.Color InteriorColour = .Interior.Color If FontColour = InteriorColour Then CellHasSameFontAndInteriorColour = True Else CellHasSameFontAndInteriorColour = False End If End With End Function |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Font/CellInteriorColour
Your variables need to be Longs.
But you can simplify it without variables Public Function CellHasSameFontAndInteriorColour(rng As Range) With rng CellHasSameFontAndInteriorColour = _ .Font.Color = .Interior.Color End With End Function -- HTH RP (remove nothere from the email address if mailing direct) "ExcelMonkey" wrote in message ... I am comparing font colour with cell interior colour. When I colour the font black and use a black interior, the function returns a true value. When I colour the font white, against a white cell interior, I get an error. Should I be using color.index instead? Or am I running into a problem with one of the colours being xlColorIndexAutomatic. If so, How do I ensure that the comparison compares like numeric values to create the correct boolean value for the funtion? Public Function CellHasSameFontAndInteriorColour(rng As Range) Dim FontColour As Integer Dim InteriorColour As Integer With rng FontColour = .Font.Color InteriorColour = .Interior.Color If FontColour = InteriorColour Then CellHasSameFontAndInteriorColour = True Else CellHasSameFontAndInteriorColour = False End If End With End Function |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Font/CellInteriorColour
Thank-you once again. I may have to start paying you guys
for this education! Kind Regards EM -----Original Message----- Your variables need to be Longs. But you can simplify it without variables Public Function CellHasSameFontAndInteriorColour(rng As Range) With rng CellHasSameFontAndInteriorColour = _ .Font.Color = .Interior.Color End With End Function -- HTH RP (remove nothere from the email address if mailing direct) "ExcelMonkey" wrote in message ... I am comparing font colour with cell interior colour. When I colour the font black and use a black interior, the function returns a true value. When I colour the font white, against a white cell interior, I get an error. Should I be using color.index instead? Or am I running into a problem with one of the colours being xlColorIndexAutomatic. If so, How do I ensure that the comparison compares like numeric values to create the correct boolean value for the funtion? Public Function CellHasSameFontAndInteriorColour(rng As Range) Dim FontColour As Integer Dim InteriorColour As Integer With rng FontColour = .Font.Color InteriorColour = .Interior.Color If FontColour = InteriorColour Then CellHasSameFontAndInteriorColour = True Else CellHasSameFontAndInteriorColour = False End If End With End Function . |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Font/CellInteriorColour
I think your problem comes from the fact that the .Color property is a long
integer value; black is zero so that works but white is out of bounds for an integer - try a Double instead "ExcelMonkey" wrote: I am comparing font colour with cell interior colour. When I colour the font black and use a black interior, the function returns a true value. When I colour the font white, against a white cell interior, I get an error. Should I be using color.index instead? Or am I running into a problem with one of the colours being xlColorIndexAutomatic. If so, How do I ensure that the comparison compares like numeric values to create the correct boolean value for the funtion? Public Function CellHasSameFontAndInteriorColour(rng As Range) Dim FontColour As Integer Dim InteriorColour As Integer With rng FontColour = .Font.Color InteriorColour = .Interior.Color If FontColour = InteriorColour Then CellHasSameFontAndInteriorColour = True Else CellHasSameFontAndInteriorColour = False End If End With End Function |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Changing Font color based on font type or size | Excel Discussion (Misc queries) | |||
Change all text one font size up with various font sizes used. | New Users to Excel | |||
Changed default font, previous font still shows when editing | Excel Discussion (Misc queries) | |||
Changed default font, previous font still shows when editing | Excel Discussion (Misc queries) | |||
Dropdown list for font size, font type and number formats | Excel Programming |