VBA/Excel/Access/Word/Date Functions/DateSerial
Содержание
DateSerial( returns 4
<source lang="vb">
Sub dateDemo()
Debug.Print DateSerial(4, 11, 23)
End Sub
</source>
DateSerial(year, month, day) returns a Variant/Date containing the date for the specified year, month, and day
<source lang="vb">
Sub dateDemo3()
Debug.Print DateSerial(1997, 7, 4)
End Sub
</source>
Delivery Date Maint
<source lang="vb">
Sub Main()
Debug.Print DeliveryDateMaint(1998,12)
End Sub Public Function DeliveryDateMaint(intYear As Integer, intMonth As Integer)
Dim datStart As Date datStart = DateSerial(intYear, intMonth, 8) Select Case Weekday(datStart, vbSunday) Case vbSunday DeliveryDateMaint = datStart + 3 Case vbMonday DeliveryDateMaint = datStart + 2 Case vbTuesday DeliveryDateMaint = datStart + 1 Case vbWednesday DeliveryDateMaint = datStart Case vbThursday DeliveryDateMaint = datStart + 6 Case vbFriday DeliveryDateMaint = datStart + 5 Case vbSaturday DeliveryDateMaint = datStart + 4 End Select
End Function
</source>
Use DateSerial and Weekday
<source lang="vb">
Public Function DeliveryDateFast(intYear As Integer, intMonth As Integer)
Dim datStart As Date datStart = DateSerial(intYear, intMonth, 8) DeliveryDateFast = datStart + (7 - Weekday(datStart, vbThursday))
End Function Sub Main()
Debug.Print DeliveryDateFast(1998,7)
End Sub
</source>