Visual Basic Code of the Week (COTW)
Issue #53
Online Version at (paid subscribers only)
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.

Happy Birthday!

With this issue we start our second year of Code of the Week publication. We hope all our subscribers have enjoyed the past year of Code of the Week and we look forward to hearing your suggestions for future topics in the years to come. Just drop us a quick email at

If you have some useful source code that you would like to share with our subscribers, please email us at

Notes about this ezine

If you are not a paid subscriber, you must have signed up for our free trial at Our ezine is not an unsolicited message (in other words a spam email). Keep in mind that if you signed up for our free trial you can still receive a total of four issues at no cost to you. After you receive the four issues you will be notified about continuing your subscription.

If you do not wish to continue to receive this ezine, please email us at

Requirements for this Issue

The source code in this issue is designed for Visual Basic 4.0 and above.

If you have any questions about this issue, please email us at

In this Issue

This issue contains a few useful date routines.


There is a little known date function built into VB that is called DateDiff. It is a very powerful function for calculating the difference between two dates. DateDiff will return number of days, weeks, or years between two dates (Actually it has lots of other options, check the VB help file for complete details). This issue contains a few functions wrapped around DateDiff that provide an easier way to calculate certain values.

The first one is called DaysUntil. DaysUntil will tell you the number of days until a certain date in the future. The next one is DayOfYear which calculates the day number of the current date within the current year. For example, if you call it today (9/12/98) it will return 255. The last one is DaysPast which returns the number of days between today and a date in the past. One example that is useful for this function is if you are determining how far overdue a particular date it (as in an over task or payment). You can also use it to see how many days you have been on this planet (at least those of you that are not astronauts) .

Function Definitions

Public Function DaysUntil(dFutureDate As Date) As Long
Public Function DayOfYear() As Long
Public Function DaysPast(dPastDate As Date) As Long


Sample Usage

   Debug.Print DayOfYear()
   ' will show 255 in debug window on 9/12/98
   ' will show 1 in debug window on 1/1/98

   Debug.Print DaysUntil("1/1/2000")
   ' will show 476 on 9/12/98 in the debug window

   Debug.Print DaysPast(1/1/98")
   ' will show 254 on 9/12/98 in the debug window

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 link at the top of this document.


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.


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 five 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