question on VB code

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

hi,
can anybody explain what the difference is between these two expressions:
set myRange=activesheet.range("A10:B20")
myRange=activesheet.range("A10:B20")
and what will happen if we use the codes in place of each other?
thanx
 
Assuming that you have not declared the variables, and so they assume
variant type, then

- the first creates a range object variable pointing at the range in
question. Through this variable, you can access any the range properties,
including the values

- the second just loads the values in the range into an array variable, so
only giving access to those values.

They do different things, so using one in place of the other will probably
not do what is required.

--
HTH

Bob

(there's no email, no snail mail, but somewhere should be gmail in my addy)
 
The set command is used to assign a value to an object of some type,
document, PivotTable, Workbook, Worksheet, ToolBar and Range are just a few
of the object one can assign to an object variable.

Failure to assign an object variable a value without the use of SET will
produce an error.

I would suggest that at the top of the module you enter Option Explicit on a
line by itself to insure that all variables must be declared before assigning
them a value of some type.
 
hi,
can anybody explain what the difference is between these two expressions:
set myRange=activesheet.range("A10:B20")
myRange=activesheet.range("A10:B20")
and what will happen if we use the codes in place of each other?
thanx

The second statement uses the default property of Range, which is
Value.
 
hi Bob,
could you please let me know what other range properties besides the value
can be allocated to myRange in case I use the "set"?
 
All of them,

myRange.Interior.Colorindex = 37

myRange.Font.Name = "Verdana"

etc.

Look up Range in VBA help and click on the Properties link to see them

--
HTH

Bob

(there's no email, no snail mail, but somewhere should be gmail in my addy)
 
appreciate it.

Bob Phillips said:
All of them,

myRange.Interior.Colorindex = 37

myRange.Font.Name = "Verdana"

etc.

Look up Range in VBA help and click on the Properties link to see them

--
HTH

Bob

(there's no email, no snail mail, but somewhere should be gmail in my addy)
 
Back
Top