写了函数,发现你的更简洁、、
'函数调用0===================
'Functions.Execute("时间转高精度文本",t,[取整方式],[精确小数位数])
'20160811将date类型转string类型,同时对比cstr(date),可提高精确度
'返回"yyyy-MM-dd hh:mm:ss.***"
'取整方式:0四舍五入,1向上取整,-1向下取整
'函数调用1===================
Dim t As Date = args(0)
Dim 取整方式 As Integer = 0
If args.length > 1
取整方式 = args(1)
End If
Dim 精确小数位数 As Integer = 3
If args.length > 2
精确小数位数 = args(2)
End If
Dim s As String = CStr(t) '默认转化会自动舍弃小数部分
Dim t2 As Date = CDate(s)
Dim n As Double = (t-t2).Totalseconds * 10^精确小数位数
Dim i As Integer
Select Case 取整方式
Case 0
i = math.Round(n)
Case -1
i = math.Floor(n)
Case 1
i = math.Ceiling(n)
End Select
Dim t3 As String
If i = 0
t3=s
Else
t3 = s & "." & i
End If
Return t3