Time to develop adequate Macro and VBA knowledge

C

Cheese

I've been a Microsoft user for years. Until recently I have not needed to use
Access for more than the basic database chores. I now have a strong need to
incorporate macros and VBA into my work.

I have several textbooks that discuss these topics, geared toward usage with
Office products. Because I have no prior knowledge of this stuff, is there a
long learning curve to expect? If I work for say, 15-20 minutes per day on
textbook examples and experimentation of my own, can I gain an average
understanding in a couple of months time?

What learning path would you recommend I take? In other words, what aspects
of macros and VBA should I start with? I'm no rocket scientist, but I usually
learn well from books and trying stuff on my own - without the need for a
classroom environment.

I appreciate your suggestions.
 
M

MacDermott

"Adequate" is pretty subjective. Why don't you try it for a week or two,
and see how satisfied you are with your progress? My guess from my own
learning style is that you might find half-hour sessions a lot more
productive than 10-15 minutes - but that's up to you.

My personal suggestion -
skip the macros. VBA can do almost anything a macro can, and much more.
If you're serious about this, you'll almost certainly end up needing the VBA
anyhow, and not needing the macros much.

Also -
Learn to use the newsgroups. Look at the questions which get good
answers, and those that don't - model yours on the former.

HTH
 
A

Alex White MCDBA MCSE

When learning something new, I find I have to achieve something, so when it
comes to programming, think of something you want to achieve e.g. an address
book program.

You need to set down what your goals are e.g.

I want to be able to find things
I want to be able to add things
I want to be able to edit things
I want to be able to delete things

given what you are trying to learn the topics above are the basics in any
database program, try not to refine anything straight away, because in a
couple of weeks you will be able to do things that you could not do now, in
other words you will almost definitely trash you learning project a couple
of times.

I totally agree with the thing about macros I personally never use them if I
can do it in vba, learn vba it is very powerful.

As what you are trying to learn is Access, then opening/edit/add records is
the some of the first stuff you are going to need.

Think about event driven processes, Access is an event driven language, in
other words the basic system is waiting for you to tell it what to do, that
could be keystrokes, mouse actions etc, the whole system is based on this
approach.

There are some very good books out there, but I would wait until you have
formulated more questions before running out and buying any.

e.g. I don't understand how access forms work, then you know when you go
into the book shop what you are looking for.

Good luck, and post questions if you need some help, nothing is too stupid,
we all were beginners at some point.
 
N

Neil

I would suggest having some type of project you need to cmoplete as a good
starting point, just trying to learn VBA for the sake of it can be a drudge,
when we teach we always have an end product for students to aim at for
instance, an Access database with picture handling functionality. By setting
this goal the student has definate goals and tends to learn quicker.

I would suggest approx 30mins per day should be enough to get a good working
knowledge within 6-8 weeks

I was forced into learning VBA because like you I couldn't do things with
standard Access functions.
I started by using Macros and then when I needed to learn VBA a bit more, as
an exercise I used the built in function to convert those macros to VBA, and
then examined the code, which I found a good way to get to grips with the
basics of VBA.

Once you get a bit of a feel for how it works a couple of good books will
definately be of use, there are plenty of books about, but I find it's
usually a personal choice as to the authors style the may set one book apart
from another, maybe your local library can help you here before you commit
good money to the books.

One of the best places I found to get information when I was learning was
the Access newsgroups, coupled with regular visits to the Access MVP sites
(www.mvps.org) and searching for answers on www.groups.google.com and you
should be able to find almost anything you need to know.


HTH

Neil
www.nwarwick.co.uk
 
N

Nikos Yannacopoulos

MacDermott said:
"Adequate" is pretty subjective.
An understatement... it never gets to be "adequate"! There's always
anohter mile to go, and the trip so far suggests it will be rewarding.
My personal suggestion - skip the macros. VBA can do almost anything a macro
can, and much more.
Agreed on the "much more" part, but I can't think of one thing you can
do with a macro, but not with VBA. Any ideas?

Regards,
Nikos
 
K

Ken Snell [MVP]

AutoExec macro to run when the database first opens......

You can simulate in VBA by opening an initial form and using that form's
Load or Timer event to run an initial code, but AutoExec works much more
effectively.
 
N

Nikos Yannacopoulos

Thanks Ken,

I missed out the obvious... probably because all my recent apps have a
startup form, so I haven't used an Autoexec macro in a while.
Come to think of it, Autokeys is another... there is no way to do that
in code, is there?

Regards,
Nikos
 
K

Ken Snell [MVP]

You would have to write VBA code within each form to capture the key strokes
and then handle the "hot keys"...but again, AutoKeys makes this much easier
to do.

Thanks for adding that one to the list.
 
C

Cheese

Thanks to everybody for the suggestions. I do realize that "adequate" and
"6-8 weeks" don't mean a whole lot. What I was getting at is whether or not
an average understanding - one that provides an elementary to intermediate
set of abilities - can be obtained in short time, what I consider to be 6-8
weeks working everyday for 15-30 minutes, or much longer, say 1-2 years.

I have many books on this subject because they were all given to me by a
friend. Some books are Access/Office oriented with sections dedicated to VBA.
A couple are straight Visual Basic books. What serves me better? Learning VBA
independent of Access, or should I use Access all along to help me learn?
 
N

Neil

30mins per day for 6-8 weeks will definately get you a good understanding.

It's difficult to learn VBA as a stand alone language, mainly beacause each
application (Word, Excel, Access etc) has its own set of features and foibles
which are bulit around the common VBA core.

From personal experience I found that once I had got to grips with Access
VBA it was easy to get going in Excel and Word. I would suggest that you
concentrate on the package that you are most likely to code in, and then when
you're comfortable with what you know, try a little programming in some of
the other languages.


Neil
 
M

MacDermott

Beware - the "straight Visual Basic" books may be about VB6.0 (or some
earlier version). This is actually a different application from Visual
Basic - it has its own forms, some rudimentary reports, and no tables of its
own. It looks enough like Access's VBA that it's easy to learn one from the
other, but I'd suggest that a beginner stick to one or the other. It sounds
as if for you that will be Access. If the book says Visual Basic 6.0 (or
5.0, or 4.0 - I don't think the earlier versions are around much any more),
and not Visual Basic for Applications, set it aside for now.
 

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