Yes it should work using weeks instead of days but you will need to test to see if that logic will work for what you want. And this is just one possible path, others might suggest alternate methods.
vWeeks = DateDiff("ww", InitialServiceDate, Date)
vWeeks = 1 'Use this to test with. If it works remove this line.
If Len(Int(vWeeks / 26)) = Len(vWeeks / 26) Then
ServiceType = "6 Month Service"
Else
If Len(Int(vWeeks / 4)) = Len(vWeeks / 4) Then
ServiceType = "Monthly Service"
Else
If Len(Int(vWeeks / 1)) = Len(vWeeks / 1) Then
ServiceType = "Weekly Service"
Else
ServiceType = "No Service Needed"
End If
End If
End If
If you put this as a column in the query for the report, would be something like below.
ServiceType: IIF(Len(Int(DateDiff("ww", InitialServiceDate, Date) / 26)) = Len(DateDiff("ww", InitialServiceDate, Date) / 26), "6 Month Service", IIF(Len(Int(DateDiff("ww", InitialServiceDate, Date) / 4)) = Len(DateDiff("ww", InitialServiceDate, Date) / 4), "1 Month Service", IIF(Len(Int(DateDiff("ww", InitialServiceDate, Date) / 1)) = Len(DateDiff("ww", InitialServiceDate, Date) / 1), "1 Week Service", "No Service")))