VBA將F列結束日期時間減去H列開始日期時間,在G列將寫上多少小時,日期時間格式是這種的7/13/2023 9:09:00 AM
时间: 2024-04-15 10:29:01 浏览: 71
您好!要在VBA中计算两个日期时间之间的小时数,您可以使用以下代码:
```vba
Sub CalculateHours()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
' 设置要操作的工作表
Set ws = ThisWorkbook.Worksheets("Sheet1") ' 将"Sheet1"替换为您实际的工作表名称
' 获取数据的最后一行
lastRow = ws.Cells(ws.Rows.Count, "F").End(xlUp).Row
' 循环计算每一行的小时数差值
For i = 2 To lastRow ' 假设数据从第2行开始,如果不是,请修改起始行数
' 获取结束日期时间和开始日期时间的值
Dim endTime As Date
Dim startTime As Date
endTime = ws.Range("F" & i).Value
startTime = ws.Range("H" & i).Value
' 计算小时数差值
Dim hoursDiff As Double
hoursDiff = DateDiff("h", startTime, endTime)
' 将小时数差值写入G列
ws.Range("G" & i).Value = hoursDiff
Next i
End Sub
```
请将上述代码复制并粘贴到您的VBA编辑器中(按下ALT + F11打开VBA编辑器),然后在代码中找到并替换"Sheet1"为您实际使用的工作表名称。运行这段代码后,它将在G列中计算并写入每一行的小时数差值。
希望对您有所帮助!如有任何问题,请随时提问。
阅读全文