将时间格式从600更改为06:00:00

时间:2019-05-23 09:30:46

标签: excel vba

我在两个工作簿中都有两个工作簿A和B,以及两个工作表1和2,我需要根据时间进行比较和查找匹配。在工作表B的工作表1中我有hh:mm:ss 24小时时间格式。但是在工作簿AI中,时间从数字到600到800等数字格式。我已将工作簿1中的时间格式更改为hh:mm:ss,但是第一次运行后遇到的问题时间是时间已更改为06:00:00,并且在第二次运行中再次更改为00:00:00。

dig yahoo.com|awk '/10\./ {print $5}' | nc -zv IPADRESS PORT

我尝试了以上代码

1 个答案:

答案 0 :(得分:1)

如果您想要VBA解决方案,例如600 = 600分钟

Dim c

For Each c In Selection
    c.Value2 = c / (24 * 60)
    c.NumberFormat = "hh:mm"
Next c

或者仅使用= A1 / (24 * 60)并将其格式设置为Time


评论后更新

对于600 = 06:00:00,您可以使用以下内容

Dim c, tmpTime As Variant

For Each c In Selection
    ' Test if number
    If IsNumeric(c.Value2) Then
        ' Split into character array, the Len(c.Value2) limits the size of the array otherwise
        ' an additional empty element is created
        tmpTime = Split(StrConv(c.Value2, vbUnicode), Chr$(0), Len(c.Value2))
        ' Write results back and format
        With c.Offset(0, 1)
            .Value2 = Join(tmpTime, ":")
            .NumberFormat = "hh:mm:ss"
        End With
    End If
Next c