Borders within a With/End With

  • Thread starter Thread starter Otto Moehrbach
  • Start date Start date
O

Otto Moehrbach

Excel XP & Win XP
I have the following code to place a black thin border around every cell in
the range, and a thick colored border around (outline) the whole range. I
get an error "Object Required" on the first line and would probably get the
same error on the second line if the code got past the first line. What is
the proper syntax/code to do what I want? Thanks for your time. Otto
With ws
.["F1:H6"].Borders LineStyle:=xlContinuous, Weight:=xlThin,
ColorIndex:=xlAutomatic
.["F1:H6"].BorderAround LineStyle:=xlContinuous,
Weight:=xlThick, ColorIndex:=9
.["F1:H6"].Interior.ColorIndex = 36
End With
 
First, I wouldn't use ["F1:H6"] (or any of the [] shorthand), but
Range("F1:H6"). The shorthand is sometimes convenient, sometimes confusing
and misleading, and sometimes makes it hard to track down a problem.

Second, I think what you need is
With ws
With .Range("F1:H6").Borders
.LineStyle=xlContinuous
.Weight=xlThin
.ColorIndex:=xlAutomatic
End With
' etc.
End With

- Jon
 
Thanks Jon. I'll give that a try. Otto
Jon Peltier said:
First, I wouldn't use ["F1:H6"] (or any of the [] shorthand), but
Range("F1:H6"). The shorthand is sometimes convenient, sometimes confusing
and misleading, and sometimes makes it hard to track down a problem.

Second, I think what you need is
With ws
With .Range("F1:H6").Borders
.LineStyle=xlContinuous
.Weight=xlThin
.ColorIndex:=xlAutomatic
End With
' etc.
End With

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Tutorials and Custom Solutions
http://PeltierTech.com
_______


Otto Moehrbach said:
Excel XP & Win XP
I have the following code to place a black thin border around every cell
in the range, and a thick colored border around (outline) the whole
range. I get an error "Object Required" on the first line and would
probably get the same error on the second line if the code got past the
first line. What is the proper syntax/code to do what I want? Thanks for
your time. Otto
With ws
.["F1:H6"].Borders LineStyle:=xlContinuous, Weight:=xlThin,
ColorIndex:=xlAutomatic
.["F1:H6"].BorderAround LineStyle:=xlContinuous,
Weight:=xlThick, ColorIndex:=9
.["F1:H6"].Interior.ColorIndex = 36
End With
 
Hi Otto,
What you tried implies that Borders is a method. In fact it is a collection.
Try
With Range("A1:B6").Borders
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
 
Back
Top