Registrations are now open. Join us today! There is still a lot of work to do on the wiki yet! More information about editing can be found here. Already have an account?

# Function to Determine If a Year Is a Leap Year

ID: Q100438

The information in this article applies to:

• Microsoft FoxPro for MS-DOS, versions 2.0, 2.5 and 2.5a
• Microsoft FoxPro for Windows, versions 2.5 and 2.5a

## SUMMARY

To determine if year is a leap year, use the following function, which returns .T. if a date is in a leap year:

```   ans = isleap({05/21/92})
WAIT WINDOW "1992 is " + iif(ans, "",  "not ") + " a leap year "

***********************************************************
* Notes: This function subtracts one day from March 1.
*        If the result is the 29th, the year is a leap year.
*        If it is the 28th, then it is not a leap year.
***********************************************************
FUNCTION isleap
PARAMETERS mdate
myear = YEAR(mdate)
march1  = "03/01/" + STR(myear,4,0)
lastFeb = ctod(march1)-1
RETURN IIF(DAY(lastFeb)=29,.T.,.F.)
```

Additional reference words: FoxWin FoxDos 2.00 2.50 2.50a KBCategory: kbprg KBSubcategory: FxprgGeneral

 Last Reviewed: June 27, 1995 © 1999 Microsoft Corporation. All rights reserved. Terms of Use.