-1
我想計算一段時間內工作日(週六和週日)的總計。循環是可以的,但它不會像我想要的那樣給出結果。舉個例子,AD6 = 26/1/2015 5:00:00 PM和T6 = 2015年1月13日8:05:00 AM應該給4天,但它給怪異的數字807878.VBA計算整個行的總平日
這是什麼意思?我如何調整我的編碼以達到我想要的水平?有我用於這個過程的代碼。 謝謝!
Sub CalcWeek()
Dim Date1 As Date, Date2 As Date, dateToCheck As Date
Dim daysBetween As Long, weekdays As Long, i As Long
Dim lrow As Long
Dim PRow As Long
Dim CurrentSheet As Worksheet
Set CurrentSheet = Excel.ActiveSheet
FRow = CurrentSheet.UsedRange.Cells(1).Row
lrow = CurrentSheet.UsedRange.Rows(CurrentSheet.UsedRange.Rows.count).Row
weekdays = 0
For PRow = lrow To 2 Step -1
For i = 0 To DateDiff("d", (CurrentSheet.Cells(PRow, "AD").Value), (CurrentSheet.Cells(PRow, "T").Value))
dateToCheck = DateAdd("d", i, CurrentSheet.Cells(PRow, "AD").Value)
If (Weekday(dateToCheck) <> 2 And Weekday(dateToCheck) <> 3 And Weekday(dateToCheck) <> 4 And Weekday(dateToCheck) <> 5 And Weekday(dateToCheck) <> 6) Then
CurrentSheet.Cells(PRow, "AI").Value = CurrentSheet.Cells(PRow, "AI").Value + 1
End If
Next i
'CurrentSheet.Cells(PRow, "AJ").Value = weekdays
Next PRow
End Sub