[英]Calculate difference between two times in range of columns
我試圖計算每行A5
到A20
和B5
到B20
之間的差異,如果等於 4 小時,則將顏色更改為綠色。 我很難設置一個范圍。 我目前一次只能做一個單元格。
Sub test()
Dim Total As Double
Dim Timein As Date
Dim Timeout As Date
Timein = CDate(Range("A7").Value)
Timeout = CDate(Range("B7").Value)
Total = 24 * ((Timeout - Timein))
Debug.Print Total
Debug.Print Format(Total, "#,##0_);(#,##0)")
If Total = 4 Then
Range("A7").Interior.Color = vbGreen
End If
Debug.Print "Number of hours = " & Total * 24
End Sub
為什么你甚至使用 VBA 來完成這項任務? Excel 具有專門用於此類操作的內置命令和功能(條件格式)。 使用 VBA 是一種矯枉過正。
Sub test()
Dim dteIn As Date
Dim dteOut As Date
Dim rng As Range, cll As Range
Set rng = Range("A5:A20")
For Each cll In rng
dteIn = CDate(cll.Value)
dteOut = CDate(cll.Offset(0, 1).Value)
If CInt((dteOut - dteIn) * 24) = 4 Then
cll.Interior.Color = vbGreen
End If
Next
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.