尝试通过整个工作表转换特定列中的特定数据。
这是我当前的代码,它没有错误输出,但是它没有正确显示第一个结果(显示00:00:00),并且只在第一个记录处停止。
Sub CleanEntry()
Dim i As Integer
Dim Seconds As Integer
Dim j As Long
Dim c As Long
j = 2
For i = Sheet1.UsedRange.Rows.Count To 1 Step -1
c = Range("B" & j).Value
c = c / 86400
Range("B" & j).Value = Format(c, "hh:mm:ss")
j = j + 1
Next
End Sub
答案 0 :(得分:4)
虽然我不明白为什么你使用两个计数器,一个倒退而另一个倒转,这可以用一行完成:
Sub CleanEntry()
Dim i As Long
Dim j As Long
j = 2
For i = Sheet1.UsedRange.Rows.Count To 1 Step -1
Range("B" & j).Value = Format(TimeSerial(0, 0, Range("B" & j).Value), "hh:mm:ss")
j = j + 1
Next
End Sub