Nice stuff, hadn't thought of doing it like that but you need to subtract 1 from the char code so it returns the correct number.
IF((YEAR(TODAY())*12+MONTH(TODAY()))-(YEAR(A1)*12+MONTH(A1))<4
,CHAR(CODE("A")-1+(YEAR(TODAY())*12+MONTH(TODAY()))-(YEAR(A1)*12+MONTH(A1)))
,"D")
I really like...