A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Excel » New Users
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

explanation of codes in Visual Basic when creating User form



 
 
Thread Tools Display Modes
  #1  
Old November 2nd, 2009, 01:35 AM posted to microsoft.public.excel.newusers
Rachel
external usenet poster
 
Posts: 187
Default explanation of codes in Visual Basic when creating User form

Hi,
I am trying to create a user form in Visual Basic however I'm trying to
teach myself by reading/watching tutorials. (www.contectures.o.ca, etc)
A lot of the instructions I am seeing simply give the code rather than
explain how to actually write one from scratch.
So...
I need to know what each 'term' means so I can understand how the codes work.
Any help is much appreciated

One of the first codes is for the Add button
Private Sub cmdAdd_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("PartsData")
What does each term refer to?
Dim
iRow
As Long
ws
Set

etc?

Is there a website that has all these definitions?
I don't really want to just copy and paste codes because when my form
doesn't work I can't work out where the error is.

Thank you in advance.
Rachel
  #2  
Old November 2nd, 2009, 06:32 AM posted to microsoft.public.excel.newusers
Sox
external usenet poster
 
Posts: 3
Default explanation of codes in Visual Basic when creating User form

Depends on how extensive an explanation you need. A sketchy explantion of
most of the terms is available in the help files within the Visual Basic
editor. For example, looking up "Dim" will give you the syntax of Dim with
its minimum and optional parts, and a few examples. In its simplest use Dim
is used to define a variable. For the example you gave

Dim iRow as Long

means you have defined a variable named "iRow" and you want it to be the
data type long integer ("Long" in VB-speak). The named variable can then be
used later within the function or subroutine. In general, you can name your
variables almost anything you want but there are some restrictions -- you
can't have a variable named as all integers for example (there's no way to
tell that "1234" means your variable instead of just a number), and you
cannot give a variable a name that is a reserved word in visual basic.

Following that pattern, the line:

Dim ws as Worksheet

means you defined a variable named "ws" as a Worksheet. Defining that
variable just reserves memory for its later use, and does not actually
assign a value to it (more acurately, it has the special value of "Nothing"
until you tell the subroutine which Worksheet you want the variable ws to
refer to). Speaking of which....

Set ws = Worksheets("PartsData")

means you have set the variable ws, which you previously defined as a
variable referring to a Worksheet, to refer to the "PartsData" Worksheet.
For that particular example, presumably the workbook actually has a
Worksheet named "PartsData", otherwise any of the following code using the
variable ws is going to get really confused.

If you have any background in programming -- and in particular
object-oriented programming -- you can stumble your way through most Excel
programming just by recording Macros and looking at the resulting code,
supplmented with a healthy dose of the help files.

On the other hand, if you do not have any background at all in programming,
or if all of that Visual Basic for applications code looks like double-talk,
one of the many books on Excel programming might be advisable. The general
observation is that object-orietned programming has a fairly steep leanring
curve, because everything it talks about refers to something else you don't
know about. In that case a good book that actually steps through examples
and explains what is going on might be useful.

Regards,

"Rachel" wrote in message
...
Hi,
I am trying to create a user form in Visual Basic however I'm trying to
teach myself by reading/watching tutorials. (www.contectures.o.ca, etc)
A lot of the instructions I am seeing simply give the code rather than
explain how to actually write one from scratch.
So...
I need to know what each 'term' means so I can understand how the codes
work.
Any help is much appreciated

One of the first codes is for the Add button
Private Sub cmdAdd_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("PartsData")
What does each term refer to?
Dim
iRow
As Long
ws
Set

etc?

Is there a website that has all these definitions?
I don't really want to just copy and paste codes because when my form
doesn't work I can't work out where the error is.

Thank you in advance.
Rachel


  #3  
Old November 4th, 2009, 11:19 PM posted to microsoft.public.excel.newusers
Rachel
external usenet poster
 
Posts: 187
Default explanation of codes in Visual Basic when creating User form

Thanks very much Sox,
I think I will invest in a good book and get studying.
Cheers


"Sox" wrote:

Depends on how extensive an explanation you need. A sketchy explantion of
most of the terms is available in the help files within the Visual Basic
editor. For example, looking up "Dim" will give you the syntax of Dim with
its minimum and optional parts, and a few examples. In its simplest use Dim
is used to define a variable. For the example you gave

Dim iRow as Long

means you have defined a variable named "iRow" and you want it to be the
data type long integer ("Long" in VB-speak). The named variable can then be
used later within the function or subroutine. In general, you can name your
variables almost anything you want but there are some restrictions -- you
can't have a variable named as all integers for example (there's no way to
tell that "1234" means your variable instead of just a number), and you
cannot give a variable a name that is a reserved word in visual basic.

Following that pattern, the line:

Dim ws as Worksheet

means you defined a variable named "ws" as a Worksheet. Defining that
variable just reserves memory for its later use, and does not actually
assign a value to it (more acurately, it has the special value of "Nothing"
until you tell the subroutine which Worksheet you want the variable ws to
refer to). Speaking of which....

Set ws = Worksheets("PartsData")

means you have set the variable ws, which you previously defined as a
variable referring to a Worksheet, to refer to the "PartsData" Worksheet.
For that particular example, presumably the workbook actually has a
Worksheet named "PartsData", otherwise any of the following code using the
variable ws is going to get really confused.

If you have any background in programming -- and in particular
object-oriented programming -- you can stumble your way through most Excel
programming just by recording Macros and looking at the resulting code,
supplmented with a healthy dose of the help files.

On the other hand, if you do not have any background at all in programming,
or if all of that Visual Basic for applications code looks like double-talk,
one of the many books on Excel programming might be advisable. The general
observation is that object-orietned programming has a fairly steep leanring
curve, because everything it talks about refers to something else you don't
know about. In that case a good book that actually steps through examples
and explains what is going on might be useful.

Regards,

"Rachel" wrote in message
...
Hi,
I am trying to create a user form in Visual Basic however I'm trying to
teach myself by reading/watching tutorials. (www.contectures.o.ca, etc)
A lot of the instructions I am seeing simply give the code rather than
explain how to actually write one from scratch.
So...
I need to know what each 'term' means so I can understand how the codes
work.
Any help is much appreciated

One of the first codes is for the Add button
Private Sub cmdAdd_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("PartsData")
What does each term refer to?
Dim
iRow
As Long
ws
Set

etc?

Is there a website that has all these definitions?
I don't really want to just copy and paste codes because when my form
doesn't work I can't work out where the error is.

Thank you in advance.
Rachel


 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump


All times are GMT +1. The time now is 01:31 AM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.