目次
8)関数
8-1)日付と時間を操作する関数
Now: 現在の日付と時間を取得します。
Now: 現在の日付と時間を取得します。 Dim currecurrenntDateTime As Date currecurrenntDateTime = Now Debug.Print "現在時刻:" & currecurrenntDateTime
Date: 現在の日付を取得します。
Dim currentDate As Date currentDate = Date Debug.Print "現在日付:"; currentDate
Time: 現在の時間を取得します。
Dim currentTime As Date currentTime = Time Debug.Print "現在時刻:" & currentTime
8-1-2)日付の部分取得
Year: 日付から年を取得します。
Dim yearPart As Integer yearPart = Year(Now) '整数 Debug.Print "年:"; yearPart
Month: 日付から月を取得します。
Dim monthPart As Integer monthPart = Month(Now) '整数 Debug.Print "月:" & monthPart
Day: 日付から日を取得します。
Dim dayPart As Integer dayPart = Day(Now) '整数 Debug.Print "日:" & dayPart
8-1-3)時間の部分取得
Hour: 時間から時を取得します。
Dim hourPart As Integer hourPart = Hour(Now) '整数型 Debug.Print "時:" & hourPart
Minute: 時間から分を取得します。
Dim minutePart As Integer minutePart = Minute(Now) '整数型 Debug.Print "分:" & minutePart
Second: 時間から秒を取得します。
Dim secondPart As Integer secondPart = Second(Now) '整数型 Debug.Print "秒:" & secondPart
8-1-4)日付と時間の解析・構成
DateSerial: 年、月、日を指定して日付を生成します。
Dim specificDate As Date Dim intY, intM, intD As Integer intY = 2024: intM = 7: intD = 14 specificDate = DateSerial(intY, intM, intD) Debug.Print "DateSerial:"; specificDate
TimeSerial: 時、分、秒を指定して時間を生成します。
Dim specificTime As Date Dim intHH, intMM, intSS As Integer intHH = 13: intMM = 45: intSS = 14 specificTime = TimeSerial(intHH, intMM, intSS) Debug.Print "TimeSerial:" & specificTime
dateValue: 文字列を日付に変換します。
Dim date_Value As Date Dim strD As String strD = "2024-05-31" date_Value = dateValue(strD) Debug.Print "dateValue:" & date_Value
timeValue: 文字列を時間に変換します。
Dim time_Value As Date Dim strT As String strT = "13:45:14" time_Value = timeValue(strT) Debug.Print "timeValue:" & time_Value
8-1-5)日付と時間の演算
DateAdd: 日付に指定した期間を加算します。
Dim newDate As Date strD = #5/28/2024# newDate = DateAdd("d", 10, strD) ' Date Debug.Print "DateAdd:" & newDate ' 現在の日付に10日を加算
DateDiff: 2つの日付の差を指定した単位で返します。
Dim daysDifference As Long Dim dataD1, dateD2 As Date dataD1 = #5/28/2024# dataD2 = #7/6/2024# daysDifference = DateDiff("d", dataD1, dataD2) 'long Debug.Print "DateDiff:" & daysDifference
8-1-6)日付と時間の形式変換
‘Format: 日付や時間を指定した形式の文字列に変換します。
Format: 日付や時間を指定した形式の文字列に変換します。
Dim formattedDate As String
formattedDate = Format(Now, “yyyy/mm/dd hh:nn:ss”)
Dim d As Date d = #1/15/2024 2:34:16 PM# Debug.Print "Format:" & Format(d, "dd/mm/yyyy") ' 結果: 15/01/2024 Debug.Print "Format:" & Format(d, "mm-dd-yyyy") ' 結果: 01-15-2024 Debug.Print "Format:" & Format(d, "Long Date") ' 結果: Monday, January 15, 2024 Debug.Print "Format:" & Format(d, "Short Date") ' 結果: 1/15/2024 Debug.Print "Format:" & Format(d, "yyyy/mm/dd hh:nn:ss")