<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Message</TITLE>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1126" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>As a big believer in classes (but a poor doer) I've
tried to move in that direction for years.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I've recently been working behind a class fiend in
a VB project and have had a chance to</FONT></DIV>
<DIV><FONT face=Arial size=2>do more classes.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Here's a "BIG" reason to use classes for those
who're having Senior moments - lookup. I've</FONT></DIV>
<DIV><FONT face=Arial size=2>accumulated hundreds of functions over the years
and occasionally find myself redoing something</FONT></DIV>
<DIV><FONT face=Arial size=2>I've had for years just because I can't find
it. If you </FONT><FONT face=Arial size=2>can remember the class name, you
can lookup </FONT></DIV>
<DIV><FONT face=Arial size=2>the variable. I intend to head in this
direction </FONT><FONT face=Arial size=2>soon - except for ...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> ... Access Add Ins - Can't directly
use a class in an Add In module. I think you could move </FONT></DIV>
<DIV><FONT face=Arial size=2>your class to a VB project </FONT><FONT face=Arial
size=2>and make a Dll and be able to use it directly that way - will try
someday. </FONT></DIV>
<DIV><FONT face=Arial size=2>If anybody knows let </FONT><FONT face=Arial
size=2>me know.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Tom (uh, uh, uh ... oh yea) Adams</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B>
<A title=DWUTKA@marlow.com href="mailto:DWUTKA@marlow.com">Drew Wutka</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A title=accessd@databaseadvisors.com
href="mailto:'accessd@databaseadvisors.com'">'accessd@databaseadvisors.com'</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, February 03, 2003 6:55
PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> RE: [AccessD] Standard vs. Class
Module</DIV>
<DIV><BR></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>Hmmmm.....good question. </FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>Let's start with the basics. A standard module is a flat code
page. It can house code, store global variables, and can house callback
functions. The main portion of that is it can house code. You
can put all of the functions and subs within it that you would like, however,
that is all they are, functions and subs, and thus a standard module is
relatively 'unorganized'.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>A
Class module is a code 'object'. Being an object allows the Class module
to have properties and procedures. The code within is the same (language
wise), but now you have an organized set of code.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>Examples where a Standard Module is useful.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>modOSMachineName</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>That's the name of a module I have which gives you the name of the
computer you are on. It's a simple API call.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>modOSUserName</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>Same
as above, but it provides the NT Username of the person logged onto a
computer.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>Can
these be put into a class? Yes they can. However, they are just as
organized in their own modules. Putting them into a class would be
useful as a 'Environment' object:</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>Dim
env as Environment</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>set
env = New Environment</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>debug.print env.MachineName</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>debug.print env.UserName</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>However, if you just want the computer name, here and there, instead of
creating a class object, just to use one property, then it would be better as
it's own function in a module:</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>debug.print fOSMachineName</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>Examples where a Class Module is better:</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>This
list would be huge, because when you really dig into Class modules, you will
find that they are so much nicer to use. However, I have a specific one
that I would have liked to use back when I was doing heavy Access FE
development.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff size=2>Way
back when, I liked to control the 'toggle' keys on the keyboard.
(Numlock, CapsLock and ScrollLock). What I used to do, was have a module
that had a function to set a toggle key oneway or the other, and another
function to just 'check' the state. What I should have done, is create a
Keyboard Class, or Toggle class, and have that class 'represent' the toggle
keys on the keyboard. That way I would be able to 'control' the keyboard
toggles as an object, instead of using multiple functions.</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2>Drew</FONT></SPAN></DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=543243702-04022003><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Myke Myers
[mailto:mmmtbig@bellsouth.net]<BR><B>Sent:</B> Monday, February 03, 2003
5:44 PM<BR><B>To:</B> accessd@databaseadvisors.com<BR><B>Subject:</B>
[AccessD] Standard vs. Class Module<BR><BR></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=859564123-03022003>Can anyone
describe how to determine when to use a standard module and when to use a
class module in Access?</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=859564123-03022003></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN
class=859564123-03022003>TIA Myke</SPAN></FONT></DIV>
<DIV><FONT face=Arial
size=2></FONT> </DIV></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>