vb 如何將107年01月16日此種文字格式轉換為日期格式 ?
- 帖子
- 764
- 主題
- 254
- 精華
- 0
- 積分
- 1031
- 點名
- 0
- 作業系統
- windows 11
- 軟體版本
- OFFICE2021
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2011-5-30
- 最後登錄
- 2025-5-4
|
vb 如何將107年01月16日此種文字格式轉換為日期格式 ?
vb 如何將107年01月16日此種文字格式轉換為日期格式 ?
目的==>判斷日期的大小 |
|
|
|
|
|
|
- 帖子
- 109
- 主題
- 2
- 精華
- 0
- 積分
- 114
- 點名
- 0
- 作業系統
- Win7 Win10
- 軟體版本
- Office 2019 WPS
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 深圳
- 註冊時間
- 2013-2-2
- 最後登錄
- 2024-11-6
|
4#
發表於 2018-1-17 10:34
| 只看該作者
回復 1# t8899
我猜另一個論壇裡的也是你吧,算了這裡再粘貼一次:- Function MDate2Date(ByVal strDate As String, ByRef RefDate As Date) As Boolean
- Dim MatChes As Object
- Dim I As Long, K As Long
- Dim strTemp As String
- Dim Date1 As Date
-
- On Error GoTo MDate1DateError
- RefDate = Date1
- Date1 = #1/1/1912#
- With CreateObject("VBScript.RegExp")
- .Global = True
- .Pattern = "\d+[\\/年\-]\s*\b((0{0,1}[1-9])|(1[0-2]))[\\/\-月]\s*\b((0{0,1}[1-9])|([12]\d)|(3[0-1]))(日|\b)"
- Set MatChes = .Execute(strDate)
- If MatChes.Count Then
- strDate = MatChes.Item(0)
- Else
- Exit Function
- End If
- .Pattern = "\d+"
- Set MatChes = .Execute(strDate)
- For I = 1 To 3
- K = Val(MatChes.Item(I - 1))
- Date1 = DateAdd(Choose(I, "yyyy", "m", "d"), K - 1, Date1)
- Next I
- MDate2Date = Day(Date1) = K
- If MDate2Date Then RefDate = Date1
- End With
- MDate1DateError:
- End Function
複製代碼 |
|
世界那麼大,可我想去哪?
|
|
|
|
|
- 帖子
- 764
- 主題
- 254
- 精華
- 0
- 積分
- 1031
- 點名
- 0
- 作業系統
- windows 11
- 軟體版本
- OFFICE2021
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2011-5-30
- 最後登錄
- 2025-5-4
|
3#
發表於 2018-1-17 09:45
| 只看該作者
回復 t8899
Hsieh 發表於 2018-1-17 09:21 
抱歉,107年01月16日 是變數 像 108年02月09日 |
|
|
|
|
|
|