RGB fill colors


Francis Hookham

I am using the macros shown below this post to change the fill colors of
some cells.
Sub Pink, Sub Green, etc., transfer the color code to the main macro,

But the colors are too strong and I need to use much softer colours.
(These are cells where I cannot change transparency.)
What I should like to do is define the color in RGB.
I know it wont work but this is what I should like:

Sub PalePink()
FillColour = RGB(255,240,245)
End Sub

Any suggestions, bearing in mind
a) the workbook will be used by a few friends
b) before I finish the workbook I should like to easily modify the colours.

Francis Hookham


Sub Pink()
FillColour = 7
End Sub

Sub Green()
FillColour = 4
End Sub

Sub ChangeSceneColour()
Count = ActiveCell.Row
While Cells(Count, 2) <> "Scene:"
Count = Count - 1
Range(Cells(Count, 2), Cells(Count + 15, 7)). _
Interior.ColorIndex = FillColour
Cells(Count, 3).Interior.ColorIndex = xlNone
Cells(Count, 5).Interior.ColorIndex = xlNone
Cells(Count, 7).Interior.ColorIndex = xlNone
Cells(Count, 3).Select
End Sub

Peter T

If the colour you want is not available in the palette, customize one of the
56 palette colours (only 40 visible in the cell's drop down Fill & Font
palettes). Eg, customize Colorindex 38, the colour under default pink

ActiveWorkbook.Colors(38) = RGB(255, 240, 245)
or manually see the Color Tab in Tools Options

If you have used the colour in that palette location anywhere in your
workbook the format will change to the newly customized colour (although of
course the format itself does not change).

Now you can either manually apply your new customized colour or do

Dim rng as range
Set rng = Range("C2:D4")
rng.Interior.Colorindex = 38

The palette with any customized colours is stored with the workbook. A
customized palette does not change any application type settings.

Afraid I don't really follow what you are trying to do with your code,
except I notice
Count = ActiveCell.Row
While Cells(Count, 2) <> "Scene:"
Count = Count - 1

eventually will fail when the variable Count gets to Zero (btw, best not to
use keywords like 'Count' as variable names).

Peter T


Hi Francis

The value of the variable FillColor is not transferred to the macro
ChangeSceneColor. You have to define the variable FillColour as public before
any macro.


Francis Hookham

Many thanks Peter (and reklamo)
ActiveWorkbook.Colors(38) = RGB(255, 240, 245)
is just what I wanted.

"While Cells(Count, 2) <> "Scene:"" is ok in this situation - the macro
needs to look for latest occurance of "Scene" in column 2.

Everything is woking as it should now.


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

Clearing radio buttons 7
Cells flashing 2
Save as 13
I need help with macro 3
VBA Help 3
still having trouble 2
Find sometimes ignores Application.FindFormat 3
count shaded cells with a gradient fill 3