【发布时间】:2014-07-02 00:03:37
【问题描述】:
我正在尝试遍历文件名以查找日期。我没有要查找的特定日期,只是尝试提取一个日期(如果文件名中存在一个日期)。问题是用户不是每次都使用相同的格式,所以我要考虑从 1-1-14 到 01-01-2014 的所有内容。我为此编写了一个函数,但是当文件名中的日期为 06-23-2014 时,我得到的返回值为 201 年 6 月 23 日。示例文件名为“F2 A-Shift 06-23-2014 Daily Sustaining Report.xls”和“F1C-Shift 6-25-14 Daily Sustaining Report.xls”。任何关于可行解决方案的帮助将不胜感激。
Function GetDate(strName As String) As Date
Dim intLen As Integer, i As Integer
intLen = Len(strName)
If intLen <= 10 Then Exit Function
For i = 1 To intLen - 10
If IsDate(Mid(strName, i, 10)) = True Then
GetDate = (Mid(strName, i, 10))
Exit Function
End If
Next i
GetDate = "1/1/2001"
End Function
【问题讨论】:
-
日期前后总是有空格>
-
您真的需要以与文件名中存在的格式相同的格式返回日期吗?
-
您需要将其用作工作表公式吗?