GridLines Inadvertantly Goes Away with Macro

  • Thread starter Thread starter JCO
  • Start date Start date
J

JCO

I have a Macro that does several things including getting the Cell
Background Fill, store it, do some work, then restore the Cell Background
Fill. However, when doing this, the Cell Gridlines are gone. I understand
I can set the Background Fill to "No Color" to restore this, but that would
defeat the purpose of restoring the color as mentioned earlier.

Code snip below:
' Change Cell Background Color
'
Dim vCellBackgroundFill As Variant 'store color
Dim vCellBackgroundNoFill As Variant 'store background grid

vCellBackgroundFill = Selection.Interior.Color

' Do other work here

With Selection.Interior
.Color = vCellBackgroundFill 'restore background fill to
original color
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With

Thanks for your help
 
JCO expressed precisely :
I have a Macro that does several things including getting the Cell
Background Fill, store it, do some work, then restore the Cell
Background Fill. However, when doing this, the Cell Gridlines are
gone. I understand I can set the Background Fill to "No Color" to
restore this, but that would defeat the purpose of restoring the
color as mentioned earlier.

Code snip below:
' Change Cell Background Color
'
Dim vCellBackgroundFill As Variant 'store color
Dim vCellBackgroundNoFill As Variant 'store background grid

vCellBackgroundFill = Selection.Interior.Color

' Do other work here

With Selection.Interior
.Color = vCellBackgroundFill 'restore background
fill to original color
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With

Thanks for your help

Gridlines only display when cells have no .Interior.Color! You can,
however, simulate gridlines by giving cells with color a dotted line
border.<g>

--
Garry

Free usenet access at http://www.eternal-september.org
Classic VB Users Regroup!
comp.lang.basic.visual.misc
microsoft.public.vb.general.discussion
 
Okay but that would print when you turn grids off for printing?

After rethinking this, I may not need to do that at all. When a cell is
filled, I'm thinking the lines are suppose to match that color. Something I
was not doing before. You can't see or tell the colors of the Cell lines,
therefore, I'm thinking it's not an issue.

Unless anyone else knows better?
thanks


"GS" wrote in message
JCO expressed precisely :
I have a Macro that does several things including getting the Cell
Background Fill, store it, do some work, then restore the Cell Background
Fill. However, when doing this, the Cell Gridlines are gone. I
understand I can set the Background Fill to "No Color" to restore this,
but that would defeat the purpose of restoring the color as mentioned
earlier.

Code snip below:
' Change Cell Background Color
'
Dim vCellBackgroundFill As Variant 'store color
Dim vCellBackgroundNoFill As Variant 'store background grid

vCellBackgroundFill = Selection.Interior.Color

' Do other work here

With Selection.Interior
.Color = vCellBackgroundFill 'restore background fill
to original color
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With

Thanks for your help

Gridlines only display when cells have no .Interior.Color! You can,
however, simulate gridlines by giving cells with color a dotted line
border.<g>

--
Garry

Free usenet access at http://www.eternal-september.org
Classic VB Users Regroup!
comp.lang.basic.visual.misc
microsoft.public.vb.general.discussion
 
After serious thinking JCO wrote :
Okay but that would print when you turn grids off for printing?

If you use Conditional Formatting to apply the dotted borders then you
can also switch these off for printing. All you need is a cell to
contain the switch 'flag' so you can toggle it how you want to
view/print your data.

--
Garry

Free usenet access at http://www.eternal-september.org
Classic VB Users Regroup!
comp.lang.basic.visual.misc
microsoft.public.vb.general.discussion
 
Back
Top