VBS date (time) formatting function code

Time:2021-10-13

Core code

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
currentTimeStr1 = CStr(Year(Now()))&"-"&Right("0"&Month(Now()),2)&"-"&Right("0"&Day(Now()),2)&" "&Right("0"&Hour(Now()),2)&":"&Right("0"&Minute(Now()),2)&":"&Right("0"&Minute(Now()),2)
currentTimeStr2 = CStr(Year(Now()))&"-"&Right("0"&Month(Now()),2)&"-"&Right("0"&Day(Now()),2)
 
WScript.Echo currentTimeStr1 '2019-04-11 15:57:57
WScript.Echo currentTimeStr2 '2019-04-11
 
'format time method n_ Flag(1-5)
WScript.Echo Format_Time(Now(),5)
 
Function Format_Time(s_Time, n_Flag)
    Dim y, m, d, h, mi, s
    Format_Time = ""
    If IsDate(s_Time) = False Then Exit Function
    y = cstr(year(s_Time))
    m = cstr(month(s_Time))
    If len(m) = 1 Then m = "0" & m
    d = cstr(day(s_Time))
    If len(d) = 1 Then d = "0" & d
    h = cstr(hour(s_Time))
    If len(h) = 1 Then h = "0" & h
    mi = cstr(minute(s_Time))
    If len(mi) = 1 Then mi = "0" & mi
    s = cstr(second(s_Time))
    If len(s) = 1 Then s = "0" & s
    Select Case n_Flag
        Case 1
            ' yyyy-mm-dd hh:mm:ss
            Format_Time = y & "-" & m & "-" & d & " "& h &":" & mi &":" & s
        Case 2
            ' yyyy-mm-dd
            Format_Time = y & "-" & m & "-" & d
        Case 3
            ' hh:mm:ss
            Format_Time = h & ":" & mi & ":" & s
        Case 4
            MM DD, YYYY
            Format_Time = y & "Year" & m & "Month" & d & "Day"
        Case 5
            ' yyyymmdd
            Format_Time = y & m & d
    End Select
End Function

Functions for formatting time and date under VBScript

The date format we sometimes encounter may be 2020-1-12    , The system automatically removes 0 from the month, but sometimes we need a complete date format, such as 2020-01-12   So what? The following functions can be easily done

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'precede a one digit number with zero
function FillZero(str)
   ttt=str
   if len(str)=1 then
      ttt="0" & str
   end if
   FillZero=ttt
end function
 
'conversion date, fill one digit with zero   2003-1-2   -->  2003-01-02
function ConvertDate(tDate)
   ttt=tDate
   if isdate(tDate) then
      ttt=year(tDate) & "-" & FillZero(month(tDate)) & "-" & FillZero(day(tDate))
   end if
   ConvertDate=ttt
end function
 
'enter a date and time string and convert it into a new date and time string of four digits and the other two digits
function ConvertDateTime(tDateTime)
   ttt=tDateTime
   if isdate(tDateTime) then
      ttt=year(tDateTime) & "-" & FillZero(month(tDateTime)) & "-" & FillZero(day(tDateTime)) & " " & FillZero(cstr(hour(tDateTime))) & ":" & FillZero(cstr(minute(tDateTime))) & ":" & FillZero(cstr(second(tDateTime)))
   end if
   ConvertDateTime=ttt
end function

This article is introduced here. Friends in need can refer to it.

Recommended Today

VBS tutorial: objects – regular expression (regexp) objects

Regular expression (regexp) objectProvides simple regular expression support. explainThe following code illustrates the usage of regexp object: Function RegExpTest(patrn, strng) Dim regex, match, matches’ create variables. Set regex = new regexp ‘establish a regular expression. Regex. Pattern = pattern ‘sets the pattern. Regex.ignorecase = true ‘sets whether characters are case sensitive. Regex. Global = true […]