VBA/Excel/Access/Word/Date Functions/DateSerial
Содержание
DateSerial( returns 4
Sub dateDemo()
Debug.Print DateSerial(4, 11, 23)
End Sub
DateSerial(year, month, day) returns a Variant/Date containing the date for the specified year, month, and day
Sub dateDemo3()
Debug.Print DateSerial(1997, 7, 4)
End Sub
Delivery Date Maint
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
Use DateSerial and Weekday
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