Create ordinal number format in Excel

Anonymous
2010-08-09T14:55:38+00:00

Hello,

I am wondering if anyone knows (or knows of any resources that describe) how to create an ordinal number format in MS Excel.

I am well aware of how to reformat numbers as text to create the ordinal number effect, but what I would like to do is have the numberdisplay as an ordinal number (e.g., "1st", "2nd", "3rd", etc.) while still retaining its numeric value (1, 2, 3, etc.).

The reason for this request is to be able to perform numeric functions (e.g., MIN, MAX, AVERAGE, etc.) on an array of ordinal numbers.

I have a spreadsheet that lists various athletes' scores and the ranking for each score.  I would like to be able to easily determine, for example, each athlete's best ranking by using a MIN() function on the list of ordinal numbers.  Currently the only way I can think to do this is by having the rankings as regular cardinal numbers.

I suppose it would be possible to have an adjacent, hidden column with the numeric value of each ranking, but I thought it might be more elegant if there was a way to change the format of the number without changing its value.

Any help is much appreciated!

Regards,

Craig

Microsoft 365 and Office | Excel | For home | Windows

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments

58 answers

Sort by: Newest
  1. Anonymous
    2010-08-09T16:09:33+00:00

    Jim,

    I would prefer to use a macro or some VBA code, rather than an adjacent column.

    One solution I have worked out is to simply format the ordinal numbers as text strings, and then when I want to perform operations on them (such as MIN()), I can extract the numeric part of the string, convert to a number, and use arrays.  But this seems a little clumsy and I am wondering if there is a more elegant way to do it.

    I am surprised that Excel does not have ordinal numbers built in!

    Thanks,

    Craig

    Was this answer helpful?

    1 person found this answer helpful.
    0 comments No comments
  2. Anonymous
    2010-08-09T16:07:02+00:00

    Nuculerman,

    Can you provide a little more detail to your solution?  I think it is on the right track of what I want to accomplish, but not sure.

    Ideally, the cell would be formatted directly.

    So if 2 is entered in the cell, either directly or as the result of a formula, it would appear as "2nd," but would still be treated by other formulas as 2.

    Thank you,

    Craig

    Was this answer helpful?

    0 comments No comments
  3. Anonymous
    2010-08-09T16:04:48+00:00

    Ron,

    Yes, this would help, but I was wondering if there is any way to format the cell/number directly, rather than having to use "helper" cells.

    I am willing to use VBA to accomplish this if need be, as the workbook in question already has other user-defined functions programmed in VBA.

    Thanks,

    Craig

    Was this answer helpful?

    1 person found this answer helpful.
    0 comments No comments
  4. Anonymous
    2010-08-09T15:55:59+00:00

    With

    A1: a number....eg 101

    This formula returns the ordinal version of that number

    B1: =A1&" "&MID("thstndrdthstndrdth",MATCH(IF(MOD(A1,100)>29,MOD(A1,10)+20,MOD(A1,100)),{0,1,2,3,4,21,22,23,24},1)*2-1,2)

    In the above example, the formula returns: 101 st

    Does that help?


    Ron Coderre

    Microsoft MVP (2006 - 2010) - Excel

    P.S. If any post answers your question, please mark it as the Answer (so it won't keep showing as an open item.)

    Was this answer helpful?

    10 people found this answer helpful.
    0 comments No comments
  5. Anonymous
    2010-08-09T15:47:56+00:00

    There is no simple solution to this. You can either use an adjascent column or you can use a macro. Depends which direction you want to go. We can help you with either way... What would be your preference?


    If this post answers your question, please mark it as the Answer... Jim Thomlinson

    Was this answer helpful?

    1 person found this answer helpful.
    0 comments No comments