VBA/Excel/Access/Word/Date Functions/DateSerial

Материал из VB Эксперт
Перейти к: навигация, поиск

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>