Yep... For...Next Loop... Keep trying guys; you are not going to find a faster more eligant solution than basically a 1 liner:
CalcDueDate = DateAdd("d", vAgreedTRT Mod 5, _
DateAdd("ww", Int(vAgreedTRT / 5), vDateReceived))
But keep trying... You may get there!
x