Enumerate Values For Easy Maintenance

Quite often, we find ourselves using variables to hold one of a set of possible values. For instance, let’s say you have a number of views on a grid. You’ll probably use an Integer to keep track of what view you’re in and as an argument to change views.

    'Here is how the sub is defined   Private Sub ChangeView(NewView as Integer)   'This is a pain to maintain - what's 3 mean?   ChangeView 3   'Constants are better   ChangeView VIEW_BY_LOCATION


An even better way is to define an enumeration:

    Private Enum eViews      vByName = 1      vByPhone = 2      vByLocation = 3   End Enum   'use the enum like a type   Private Sub ChangeView(NewView as eViews)


Now, you can call ChangeView like this:

    ChangeView vByLocation


This will give you an Intellisense box showing vByName, vByPhone, and vByLocation. Now, you don’t have to find your list of constants to remember what views you have.

Another handy enumeration is a tri-state:

    Private Enum eSuperBoolean      sbTrue = -1      sbFalse = 0      sbDefault = 99   End Enum


This lets you distinguish between (for instance) a True/False questionthat has or has not been answered.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: