Check For Leap Year in VB.Net

pradeep's Avatar author of Check For Leap Year in VB.Net
This is an article on Check For Leap Year in VB.Net in Visual Basic [VB].
When dealing with dates in VB.NET, it's a good idea not to perform manual checks or calculations, which may be inaccurate depending on the quality of the code. Instead, it's advisable to rely on the functionality of classes provided by .NET.

For instance, if you need to determine if a given year is a leap year, you can use VB.NET's IsLeapYear function. Here's an example of how you can use the function:

Code: VB.Net
Private Sub LeapYearCheck()
     Dim bLeapYear AsBoolean
     bLeapYear = Date.IsLeapYear(Now.Year)
     bLeapYear = Date.IsLeapYear(2004)
 End Sub
In the example, we define a Boolean variable, bLeapYear, to hold the result of whether a given year is a leap year. we then set the value of bLeapYear to the IsLeapYear property of the Date class and pass to it the current year, which we obtain using the Year property of the Now class. We show the value of bLeapYear in a MessageBox. The result is False because 2007 is not a leap year. After that,we follow the same steps for 2004, which is a leap year. In that case, MessageBox shows True.
tailhook123's Avatar, Join Date: May 2007
Go4Expert Member
bLeapYear = Date.IsLeapYear(Now.Year)

Nice.. whats the class type for the Date variable you are using?

Is it just like Dim Date asDate?

And the reason this code can be tricky if done manually is that common knowledge is that there is a leap year every 4 years. Uncommon knowledge is that there is an extra rule that any year divisible by 100 but not divisible by 400 is not a leap year.

So 1900 wasn't a leap year while 2000 was.
pradeep's Avatar, Join Date: Apr 2005
Team Leader
The logic behind a leap year, read here