I was thinking mostly like treating grade as a "pseudo" age. In a school db I used to work with we even had a function to get the grade from the DOB of the student - the grades or text to accommodate for request for having a K(indergarten):
Code:
Function ConvertBirthdayToGrade(Birthday As Date, SchoolYear As Variant) As String
Dim intGrade As Integer
On Error Resume Next
If IsNull(SchoolYear) Then SchoolYear = Format(Date, "yyyy")
intGrade = CInt(Left(SchoolYear, 4)) - Year(Birthday) - 5
ConvertBirthdayToGrade = IIf(intGrade >= 12, 12, intGrade)
If intGrade <= 0 Or intGrade > 12 Then
'ConvertBirthdayToGrade = Null
ConvertBirthdayToGrade = ""
ElseIf intGrade = 0 Then
ConvertBirthdayToGrade = "K"
End If
End Function
Cheers,