三、日期時間函數(shù)
<一> 獲取/設(shè)置目前日期時間函數(shù)
(1)Now ():返回系統(tǒng)目前的日期和時間。如:2007-3-29 早上10:38:22
(2)Today ():返回或設(shè)置系統(tǒng)目前的日期。
(3)TimeOfDay ():返回或設(shè)置系統(tǒng)目前的時間。
(4)DataString ():以“yyy-mm-dd”格式返回或設(shè)置系統(tǒng)目前時間。
(5)Timer ():以Double類型返回自午夜到今所經(jīng)過的秒數(shù)和毫秒數(shù),秒數(shù)是返回值的整數(shù)部分,毫秒數(shù)則是小數(shù)部分。
<二> 返回日期時間函數(shù)
(1)合并年月日成日期函數(shù) DateSerial ()
格式:DateSerial (year As Integer , month As Integer , day As Integer ) As DateTime
說明:將參數(shù)所指定的年月日合并成日期返回,參數(shù)year的值須是介于1~9999的整數(shù),若是介于0~99的整數(shù),將被解釋為1930~2029,若是小于1的整數(shù),將自目前年底中減去;參數(shù)day的值須是介于1~31的整數(shù),若是小于1的整數(shù),將自目前日期中減去。例如:DateSerial (99,10,22) 會返回#1999-10-22#;DateSerial (99,10,22-23)會返回#1999-9-29”;DateSerial (99,10,22+3)會返回#1999-10-25#。
(2)將字符串轉(zhuǎn)換成日期函數(shù) DateValue ()
格式:DateValue (str As String) As Date Time
說明:將參數(shù)轉(zhuǎn)換成日期返回。參數(shù)str是表示由1年1月00:00:00到9999年12月31日23:59:59之間日期/時間值的字符串表達式。例如:DateValue (“Februay , 12 , 1972”)會返回#1972-2-12#。
(3)合并時分秒成時間函數(shù)TimeSerial ()
格式:TimeSerial Chour As Integer , minute As Integer , Second As Integer ) As DateTime
說明:將參數(shù)所指定的時分秒合并成時間返回。參數(shù)hour的值必須是介于0~23的整數(shù),若是小于1的整數(shù),將自目前小時數(shù)中減去;參數(shù)minute和參數(shù)second的值須是介于0~59的整數(shù),若是小于1的整數(shù),將分別自目前分鐘數(shù)與秒數(shù)中減去,例如:TimeSerial (12-6,-15,0)會返回上午06:45:00
(4)將字符串轉(zhuǎn)換成時間函數(shù)TimeValue ()
格式:TimeValue (str As String) As DateTime
說明:將參數(shù)轉(zhuǎn)換成時間返回。參數(shù)str是表示由1年1月1日00:00:00到9999年12月31日23:59:59之日期/時間值的字符串表達式。例如:TimeValue (“4:35:17 pm”) 會返回#下午04:35:17#。
(5)獲取月份名稱函數(shù)MonthName ()
格式:MonthName (month As Integer [ , abbreviate As Boolean]) As String
說明:根據(jù)參數(shù)month的值返回月份的名稱,例如:MonthName (12)會返回“十二月”字符串,參數(shù)month的類型為Integer;選擇性參數(shù)abbreViate類型為Boolean,用來表示月份的名稱能否被縮寫。
(6)獲取星期幾名稱函數(shù)WeekdayName ()
格式:WeekdayName (weekday As Integer [, abbreviate As Boolean [, dayofweek As FirstDayOfWeek ]]) AS String
說明:根據(jù)參數(shù)weekday的值返回星期幾的名稱,默認情況下,1,2~7會分別返回“星期日”、“星期一”~“星期六”;abbreviate用來表示星期幾的名稱能否被縮寫,而選擇性參數(shù)dayofweek的類型為FirstDayOfWeek枚舉,用來表示一星期的第幾天,默認為FirstDayOfWeek.System (0),即采取系統(tǒng)設(shè)置中所指定的每周第一天,通常是星期日。如下表:
FirstDayOfWeek枚舉成員 | 值 | 說明 |
FirstDayOfWeek.System | 0 | 系統(tǒng)設(shè)置指定每周的第一天(默認值) |
FirstDayOfWeek.Sunday | 1 | 星期日 |
FirstDayOfWeek.Monday | 2 | 星期一 |
FirstDayOfWeek.Tuesday | 3 | 星期二 |
FirstDayOfWeek.Webnesday | 4 | 星期三 |
FirstDayOfWeek.Thursday | 5 | 星期四 |
FirstDayOfWeek.Friday | 6 | 星期五 |
FirstDayOfWeek.Saturday | 7 | 星期六 |
<三> 計算日期時間函數(shù)
(1)日期時間增減函數(shù)DateAdd ()
格式:DateAdd (interval As DateInerVal , number As Double , dt As DateTime ) As DateTime
說明:將參數(shù)dt指定的日期加上number個intval。例如:DateAdd (“m”, 1, #11/25/1990#)會返回#1990/12/25#,其中interval為“m”,表示月份,number為“1”,dt為指定的日期,這個敘述的意義是將dt指定的日期加上1個月,DateAdd (“q”, 2, #2001/1/31#)會返回#2001/7/31#,也就是#2001/1/31#加上兩個季。Interval屬于DateInterVal枚舉,成員如下表:
成員 | 值 | 說明 | 成員 | 值 | 說明 |
DateInterVal.Year | yyyy | 年 | DateInterVal.Quarte | q | 季 |
DateInterVal.Month | m | 月 | DateInterVal.DayOfYear | y | 一年中的第幾天 |
DateInterVal.Day | d | 日 | DateInterVal.Hour | h | 小時 |
DateInterVal.WeekOfYear | ww | 一年中的第幾周 | DateInterVal.DayOfWeek |
| 一周中的星期幾 |
DateInterVal.Minute | n | 分鐘 | DateInterVal.Second | s | 秒數(shù) |
(2)日期時間差函數(shù)DateDiff ()
格式:DateDiff (interval As DateInterVal, dt1 As DateTime, dt2 As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]] As Long
說明:返回dat1和dat2 兩個日期之間的間隔數(shù),間隔單位為參數(shù)interval,例如:DateDiff (“m”,#12/15/1990#, ##1/10/1990# )會返回-11,即兩個日期相間隔11個月(第一個參數(shù)指定間隔單位為月;DateDiff (“d”, #12/5/90# , #12/15/90# )會返回10,即兩個日期間隔10天(第一個參數(shù)指定間隔單位為天)。
參數(shù)interval屬于DateInterVal枚舉;選擇性參數(shù)dayofweek可以省略,用來指定哪一天為一周的第一天,屬于FirstDateOfWeek枚舉,其值有FirstDayWeek.System (0), FirstDayWeek.Sunday (1), FirstDayWeek.Monday (2), FirstDayWeek.Tuesday (3), FirstDayWeek.Wednesday (4), FirstDayWeek.Saturday (5), FirstDayWeek.Friday (6), FirstDayWeek.Satuday (7)等8種;選擇性參數(shù)weekofyear可以省略,用來指定哪一周為一年的第一周,屬于FirstWeekOfYear枚舉,其值有FirstWeelkOfYear.System (0)系統(tǒng)默認值、FirstWeelkOfYear.Jan (1)一月一日當(dāng)周、FirstWeelkOfYear.FirstFourDays (2)新年度至少有4天在該周、FirstWeelkOfYear.FirstFullWeek (3)新年度的第一個完整星期等4種;例如:DateDiff (“ww”, dat1, 1)會返回兩個日期之間有幾個星期日。
(3)獲取日期時間的指定部份函數(shù)DatePart ()
格式:DatePart (interval As DateInterval, dt As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]])
說明:返回特定日期指定部分。例如DatePart (“y”, #9/11/92#)會返回天數(shù)255,因為9月11日為1992年的第255天;DatePart (“w”, #8/22/2000)會返回3,表示為星期二。DatePart ()函數(shù)的參數(shù)意義同DateDiff ()函數(shù)。