http://www.cpearson.com/excel/ordinal.htm
=A1&IF(AND(MOD(A1,100)=10,MOD(A1,100)<=14),"th",
CHOOSE(MOD(A1,10)+1,"th","st","nd","rd","th","th", "th","th","th","th"))
I like the fact that this formula uses CHOOSE().
But I have a problem with =10 and <=14.
I am more inclined to use =11 and <=13. So I change the formula to the following.
=A1&IF(AND(MOD(A1,100)=11,MOD(A1,100)<=13),"th",
CHOOSE(MOD(A1,10)+1,"th","st","nd","rd","th","th", "th","th","th","th"))
It works fine and makes me feel *logical*.
Does anyone see any reason why I shouldn't change to 11 and 13 respectively?
Thanks.
Epinn