0

我的目标是包含一个特别格式化的日期作为长字符串的一部分。

基本格式:yyyy.mm.dd。

目标格式:yyyy/mm/dd

所以我通过谷歌搜索,到了这个网站并找到了这个答案:

String = Format(Date, "yyyy/mm/dd")

但是,它不起作用。我仍然得到“yyyy.mm.dd”。格式。

我还找到了一种使用正则表达式来切换字符的解决方案(就像在 linux OS 上使用流编辑器进行操作一样),但我想找到一个不使用任何额外功能的解决方案。

到目前为止,我想出了一个不太优雅的解决方案:

CurYear = Year(Date)
CurMonth = Month(Date)
    If CurMonth < 10 Then
        CurMonth = "0" & CurMonth
    End If
CurDay = Day(Date)
     If CurDay < 10 Then
        CurDay = "0" & CurDay
    End If

Today = CurYear & "/" & CurMonth & "/" & CurDay
4

2 回答 2

0

我知道你只需要替换你'。和 '/'。因此Replace函数最合适:

myString = Replace(Date, ".", "/")

评论后编辑

如果存在固定长度的数据字符串,则可以按如下方式进行:

myString = Left(Replace(Date, ".", "/"), 10)

结果最后一个符号被剪切。

于 2013-03-19T12:21:12.050 回答
0

强制更改的单元格公式为:

=TEXT(A1,"yyyy/mm/dd")

使用 vba:

子日期修复()

Dim dtStart As Date
Dim strFinish As String

    dtStart = ActiveCell.Value

    strFinish = Format(dtStart, "yyyy/mm/dd")

    MsgBox strFinish

结束子

于 2013-03-19T12:31:32.013 回答