New to VBA - What does this code mean?

D

dennis.mccarthy

Hello

I am new to VBA and have inherited a spreadsheet with to folloing code
lines: Can someone give a good idea what the mean? Where is the
best place to look this kind of stuff up -explinations of code etc.?
Thanks in advance.


LandedCost = ThisWorkbook.Names("LandedCost").RefersToRange.Value
landed cost is a named range but what is this code telling the
worksheet?

Dim LandedCost As Double Dim and Double are in blue as compared to
the normal black. What does Dim do?
 
K

Keith R

Words in blue are keywords, e.g. they mean something specific to Excel. Dim
is a declaration, which means the word that follows (which is a made-up word
of your chosing) is being declared as a particular type of data. Double is a
numeric data type with a pre-set number of digits, so your line of code is
declaring that LandedCost is numeric variable. Within the VBE (the window
where you see this code) click the help button and type in Dim or Double for
more information. I believe that the help files accessed from the VBE are
different than those accessed from within the main Excel window :)

The first statement indicates that LandedCost comes from a named range.
Within the main excel program, select insert/name/define then select the
LandedCost item. It should show a formula of some kind in the box at the
bottom. If you aren't sure what it does, copy and paste it back into a
follow-up message to this group for additional assistance. That line of code
is simply saying that it should look to see what the value of LandedCost is
(from the named range). Presumably your macro/code then uses that value for
some purpose. It isn't changing the named range or your worksheet, it is
just grabbing the value. Things to the left of the equal sign are being
assigned the value of whatever is on the right side of the equal sign.

HTH,
Keith
 
J

Jim Thomlinson

Keith seems to have covered most of the bases with his response. The only
thing I would add is that declaring variables is one of the areas that new
programmers seem to mess up the most. Check out this link to develope some
good habits and a better understanding...

http://www.cpearson.com/excel/variables.htm
 
D

davegb

Hello

I am new to VBA and have inherited a spreadsheet with to folloing code
lines: Can someone give a good idea what the mean? Where is the
best place to look this kind of stuff up -explinations of code etc.?
Thanks in advance.

LandedCost = ThisWorkbook.Names("LandedCost").RefersToRange.Value
landed cost is a named range but what is this code telling the
worksheet?

Dim LandedCost As Double Dim and Double are in blue as compared to
the normal black. What does Dim do?

Not sure on the first one, but Dim is used to declare a variable, in
this case as a Double. You can find them described at
http://www.ozgrid.com/VBA/variables.htm

Hope this helps in your world.
 

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

Top