Visual Basic Code of the Week (COTW)
Issue #33
All content and source code is Copyright (c) 1998 by C&D Programming Corp. No part of this issue can be reprinted or distributed in any manner without express written permission of C&D Programming Corp.

New Product - NoiseMaker

We are introducing a new product called NoiseMaker. It promises to be the best audio multimedia library for Visual Basic developers. Some of the features are:

It will be available in May 1998. For a limited time we will be taking pre-orders for only $29.95 for run-time DLL's and $129.95 for complete source code (of course you won't be charged until it ships). After this initial offering the price will increase to $49.95 and $199.95 respectively. The first version of this product will require Visual Basic 5. If you are interested, please email and we will provide complete details on placing your order or use our order form at . Just select NoiseMaker Special Offer from the Subscription Type field.

Requirements for this Issue

The source code in this issue is designed for all versions of Visual Basic.

In this Issue

We discuss some ways to do keystroke validations. It is geared more towards the beginning VB programmer.

Keystroke Validation Module


This module contains several short routines that are commonly used in the KeyPress event of various controls, such as the TextBox control. If you want this code to work in VB 3 or earlier you will need to change the return data type from Boolean to Integer.


Function IsAlphaKey(KeyAscii As Integer) As Boolean
Function IsNumericKey(KeyAscii As Integer) As Boolean
Function IsEditingKey(KeyAscii As Integer) As Boolean
Function IsAlphaNumericKey(KeyAscii As Integer) As Boolean

What they do...

IsAlphaKey checks to make sure KeyAscii is a letter from A to Z. This particular routine will not work for alphabets other than US English. If anyone can modify them appropriately for other languages please email us and we will post them for all our subscribers.

IsNumericKey checks to make sure KeyAscii is a number from 0 to 9. It also checks for a negative sign, decimal character and comma.

IsEditingKey checks to make sure KeyAscii is a backspace character.

IsAlphaNumericKey called IsAlphaKey and IsNumericKey together and therefore validates the character as described in IsAlphaKey and IsNumericKey.



True or False depending on whether keystroke is valid or not.

Sample Usage

You would put something like this in the KeyPress event of a control to make sure the user can only enter letters or a backspace.

    If IsAlphaKey(KeyAscii) or IsEditingKey(KeyAscii) then
        Exit Sub
        KeyAscii = 0 ' throw away keystroke
    End If

Source Code

To see the source code for this issue you must be a subscriber to Code of the Week. If you are a subscriber the source code is available at the following address:

This document is available on the web

Paid subscribers can view this issue in HTML format. There is no additional source or information in the HTML formatted document. It just looks a little better since we have included some HTML formatting. Just point your browser to


That concludes this issue of COTW. We hope you find the source code useful in your development.

The below describes the ways you can supply us some feedback about COTW. We would like to see our members help mold COTW into the best Visual Basic source code resource available. But to do that we need your feedback about what you like and what you do not like about COTW.

NEW! Online Catalog now available!

We have entered a partnership with VBXtras to provide many development tools available for sale on our web site. For a limited time we are offering a FREE one year subscription for anyone who purchases any products through our web site. If you are currently shopping for some cool tools, check out

This area is new and does not yet have all products online. If there is something particular you are looking for (and can't find it on our site), please let us know. We probably can get it for you at a great price!


If you are interested in advertising in COTW please email us at Our rates are VERY reasonable, actually they are almost FREE. We reach over three thousand Visual Basic developers each week.

How to tell us what you think

If you have any suggestions for topics you would like to see covered or questions about this issue, please email them to or use online feedback form at

If you have any source code you would like to submit for possible inclusion in COTW, please fill out our online submission form at

Contact Information

C&D Programming Corp.
PO Box 20128
Floral Park, NY 11002-0128
Phone or Fax: (212) 504-7945

Subscription Update

Thank you for trying Code of the Week for Visual Basic.

Your free trial expires after you receive your fourth issue. If you want to continue to receive Code of the Week you can get 52 issues of COTW for only $19.95. This is a full year of Visual Basic source code and information to help with all your development. So don't wait, subscribe now! The quickest way to subscribe is to jump to our online order form at