Microsoft KB Archive/103138

From BetaArchive Wiki
Knowledge Base

ACC: Function to Get Date of Monday Prior to Current Day

Article ID: 103138

Article Last Modified on 1/18/2007


  • Microsoft Access 1.0 Standard Edition
  • Microsoft Access 1.1 Standard Edition
  • Microsoft Access 2.0 Standard Edition
  • Microsoft Access 95 Standard Edition
  • Microsoft Access 97 Standard Edition

This article was previously published under Q103138

Moderate: Requires basic macro, coding, and interoperability skills.


This article describes a function that you can use to find the date of the Monday prior to the current day.

This article assumes that you are familiar with Visual Basic for Applications and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Visual Basic for Applications, please refer to your version of the "Building Applications with Microsoft Access" manual.

NOTE: Visual Basic for Applications is called Access Basic in Microsoft Access versions 1.x and 2.0. For more information about Access Basic, please refer to the "Introduction to Programming" manual in Microsoft Access version 1.x or the "Building Applications" manual in Microsoft Access version 2.0


The following function determines Monday's date according to the following criteria:

  • If the current date is Tuesday through Sunday, it yields the prior Monday's date.
  • If the current day is Monday, it returns the current date.
  • If the date is Null or is not a valid date, it returns Null.

         Function GetMonDate(CurrentDate)
         If VarType(CurrentDate)<>7 then
           Select Case WeekDay(CurrentDate)
             Case 1       ' Sunday
             Case 2       ' Monday
             Case 3 to 7  ' Tuesday..Saturday
           End Select
         End If
        End Function

To test the function, type the following line in the Debug window (or Immediate window in versions 1.x and 2.0), and then press ENTER:

Print GetMonDate(#4/30/93#)

Note that you receive the following result:

  1. 4/26/93#

Keywords: kbinfo kbprogramming KB103138