home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Current Shareware 1994 January
/
SHAR194.ISO
/
calculat
/
date_vb.zip
/
DATE.BAS
next >
Wrap
BASIC Source File
|
1993-09-10
|
3KB
|
90 lines
Option Explicit
' Function ConvertDate (Original As Long) As String
' Returns a string containing the converted date in Original re-converted into date format.
' Function ConvertDay (Original As Long) As Integer
' Returns an integer containing the day portion of the converted date in Original.
' Function ConvertDays (MM As Integer, DD As Integer, YY As Integer) As Long
' Returns a long integer containing a converted date derived from MM, DD, and YY.
' Function ConvertMonth (Original As Long) As Integer
' Returns an integer containing the month portion of the converted date in Original.
' Function ConvertYear (Original As Long) As Integer
' Returns an integer containing the year portion of the converted date in Original.
Function ConvertDate (Original As Long) As String
Dim DummyString
DummyString = ""
DummyString = DummyString & LTrim$(Str$(ConvertMonth(Original))) & "-"
DummyString = DummyString & LTrim$(Str$(ConvertDay(Original))) & "-"
DummyString = DummyString & LTrim$(Str$(ConvertYear(Original)))
ConvertDate = DummyString
End Function
Function ConvertDay (Original As Long) As Integer
ConvertDay = Original - ConvertDays(ConvertMonth(Original), 0, ConvertYear(Original))
End Function
Function ConvertDays (MM As Integer, DD As Integer, YY As Integer) As Long
Dim AssumedDays As Long, LastYear As Long
LastYear = (YY - 1)
AssumedDays = LastYear * 365
AssumedDays = AssumedDays + LastYear / 4 - LastYear / 100
AssumedDays = AssumedDays + LastYear / 1000 + (MM - 1) * 28 + DD
AssumedDays = AssumedDays + ((MM > 2) And (((YY Mod 4 = 0) And (YY Mod 100 <> 0)) Or (YY Mod 1000 = 0)))
Select Case MM
Case 1
AssumedDays = AssumedDays + 0
Case 2
AssumedDays = AssumedDays + 3
Case 3
AssumedDays = AssumedDays + 3
Case 4
AssumedDays = AssumedDays + 6
Case 5
AssumedDays = AssumedDays + 8
Case 6
AssumedDays = AssumedDays + 11
Case 7
AssumedDays = AssumedDays + 13
Case 8
AssumedDays = AssumedDays + 16
Case 9
AssumedDays = AssumedDays + 19
Case 10
AssumedDays = AssumedDays + 21
Case 11
AssumedDays = AssumedDays + 24
Case 12
AssumedDays = AssumedDays + 26
End Select
ConvertDays = AssumedDays
End Function
Function ConvertMonth (Original As Long) As Integer
Dim CounterMonth As Integer, AssumedMonth As Integer, ComputedYear As Integer
AssumedMonth = 12
ComputedYear = ConvertYear(Original)
For CounterMonth = 1 To 11
If Original < ConvertDays(CounterMonth + 1, 0, ComputedYear) And AssumedMonth = 12 Then
AssumedMonth = CounterMonth
End If
Next
ConvertMonth = AssumedMonth
End Function
Function ConvertYear (Original As Long) As Integer
Dim CounterYear As Integer, AssumedYear As Integer
AssumedYear = 2050
For CounterYear = 1990 To 2049
If Original < ConvertDays(1, 0, CounterYear) And AssumedYear = 2050 Then
AssumedYear = CounterYear - 1
End If
Next
ConvertYear = AssumedYear
End Function