如何编写将样本数据(例如20010317)转换为日期格式MM / DD / YYYY的函数

时间:2013-12-07 19:03:09

标签: vba

我在单元格B18,B19和B20中获得样本数据,日期格式为20010317,20120809,20130430。

如何编写将日期转换为日期格式MM / DD / YYYY的函数。

我必须调用此函数“DateConverter”,一次通过变量“dtYYYYMMDD”

我必须填写范围C18到C20,并具有显示转换范围B18到B20的结果的功能

Function DateConverter(SmplData As String) As Date
    'This function will convert the sample data to date format
    DateConverter = DateSerial(Left$(SmplData, 4), Mid$(SmplData, 5, 2), Right$(SmplData, 2))
End Function

1 个答案:

答案 0 :(得分:0)

我认为这就是你要找的东西。以下代码将获取在上面列出的单元格中输入的数字,转换它们并将新格式化的日期显示在它旁边的单元格中。

Private Sub CommandButton1_Click()
Call DateConverter
End Sub

Public Function DateConverter()
Dim dtYYYYMMDD As Range
Dim NewDate As Date

Set dtYYYYMMDD = Range("B18:B20")

For Each cell In dtYYYYMMDD
    NewDate = Mid(cell, 5, 2) & "/" & Right(cell, 2) & "/" & Left(cell, 4)
    cell.Offset(0, 1) = NewDate
Next

End Function