화요일, 목요일, 토요일 및 일요일의 양을 두 시간 간격으로 계산하는 VBA에서 간단한 계산을하고 있습니다. 계속해서 여러 가지 오류가 발생하지만, 최선을 다해 코드는 정상입니다. 나는 어떤 도움이나 개정을 주시면 감사하겠습니다. 특히 나는 당신은 MS의 문서를 읽을 필요가 내 DATEPART()가 결함이Visual Basic/Access 오류 424 개체 필요
Public Function ModWeekdays(ByRef NotificationDate As Date, ByRef OrderDate As Date, ByRef PlacementDate As Date, ByRef ReleaseDate As Date) As Integer
Dim numWeekdays As Integer
Dim totalDays As Integer
Dim totaldays2 As Integer
Dim WeekendDays As Integer
Dim WeekendDays2 As Integer
numWeekdays = 0
WeekendDays = 0
WeekendDays2 = 0
'totalDays = DateDiff(Day, NotificationDate, OrderDate) + 1
'for i as integer = 1 to totalDays
If DatePart(Day, NotificationDate) = 1 Then
WeekendDays = WeekendDays + 1
End If
If DatePart(dateinterval.Weekday, startDateNotificationDate) = 3 Then
WeekendDays = WeekendDays + 1
End If
If DatePart(dateinterval.Weekday, NotificationDate) = 5 Then
WeekendDays = WeekendDays + 1
End If
If DatePart(dateinterval.Weekday, NotificationDate) = 7 Then
WeekendDays = WeekendDays + 1
End If
NotificationDate = DateAdd("d", 1, NotificationDate)
'///////////////////////////////////////////////////////////////////////////
totaldays2 = DateDiff(dateinterval.Day, PlacementDate, ReleaseDate) + 1
If DatePart(dateinterval.Weekday, PlacementDate) = 1 Then
WeekendDays2 = WeekendDays2 + 1
End If
If DatePart(dateinterval.Weekday, PlacementDate) = 3 Then
WeekendDays2 = WeekendDays2 + 1
End If
If DatePart(dateinterval.Weekday, PlacementDate) = 5 Then
WeekendDays2 = WeekendDays2 + 1
End If
If DatePart(dateinterval.Weekday, PlacementDate) = 7 Then
WeekendDays2 = WeekendDays2 + 1
End If
PlacementDate = DateAdd("d", 1, PlacementDate)
numWeekdays = WeekendDays + WeekendDays2
Dim MyReturnVal As Integer
MyReturnVal = ModWeekdays(NotificationDate, OrderDate, PlacementDate, ReleaseDate)
End Function
어떤 오류가 표시됩니까? 오류가 있다고 생각하게 한 것은 무엇입니까? 우리는 당신의 마음을 읽을 수 없습니다. – enderland
컴파일하려고하면 많은 오류가 발생합니다. 내가 처음 만나는 것은 DatePart()의 "day"가 강조 표시되어 있고 424 객체가 필요하다는 오류 메시지가 있습니다. – NavyNuke