Loading

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company.

Learn more about Allen...

ExcelTips FAQ

Ask an Excel Question

Make a Comment

Free Business Forms

Free Calendars

** Please Note:** This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later),

If you do much geographic work, you may wonder if you can use Excel to display longitude and latitude in a cell in terms of degrees, minutes, and seconds. There are three ways that a solution can be approached.

First, if you just want to affect the display, you can follow these steps:

- Select the cell you want to format for latitude or longitude.
- Choose Cells from the Format menu. Excel displays the Format Cells dialog box.
- Make sure the Number tab is selected. (See Figure 1.)
- In the categories list, choose Custom.
- Place the insertion point in the Type box and erase whatever is there.
- Type three # signs.
- Hold down the
**Alt**key and type 0176 on the numeric keypad. (This inserts the degree symbol—and you*must*use the numeric keypad.) - Type a space, two zeros, an apostrophe (the single quote), and another space.
- Type two more zeros followed by two more apostrophes. (A quote mark won't work; it must be two apostrophes.)
- Click on OK.

** Figure 1.** The Number tab of the Format Cells dialog box.

Now, if you type a number such as 1234543 into the cell, it is displayed as 123 degrees, 45 minutes, and 43 seconds.

Sometimes, however, you may want to take a decimal value that represents latitude and longitude and display it in degrees, minutes, and seconds. For instance, you may want 122.44 (which is a decimal representation of degrees) to be displayed as 122 degrees, 26 minutes, and 24 seconds. This cannot be accomplished with formatting the cell in which the number is contained. Instead, you must use a formula to achieve the proper display. For instance, if 122.44 is in cell A7, then you can put the following in cell B7:

=TEXT(TRUNC(A7), "0" & CHAR(176) & " ") & TEXT(INT((ABS(A7) - INT(ABS(A7)))*60), "0' ") & TEXT(((((ABS(A7)-INT(ABS(A7)))*60) - INT((ABS(A7) - INT(ABS(A7)))*60))*60), " 0''")

This is a long formula, but it provides the desired formatting of the latitude or longitude value. The result is text, and cannot be used in any calculations. If you want to use a display instead, you can simply divide the decimal value of the latitude or longitude by 24, which converts it into the same value ranges used by Excel to represent times. Then you can format the display of the formula as follows:

- Select the cell containing the formula.
- Choose Cells from the Format menu. Excel displays the Format Cells dialog box.
- Make sure the Number tab is selected.
- In the categories list, choose Custom.
- Place the insertion point in the Type box and erase whatever is there.
- Type [h] followed by a degree sign (remember; you hold down the
**Alt**key and type 0176 on the numeric keypad). - Type a space, mm, an apostrophe, another space, ss, and two more apostrophes.
- Click on OK.

*ExcelTips* is your source for cost-effective Microsoft Excel training. This tip (3016) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Displaying Latitude and Longitude.

*Related Tips:*

**Program Successfully in Excel!** John Walkenbach's name is synonymous with excellence in deciphering complex technical topics. With this comprehensive guide, "Mr. Spreadsheet" shows how to maximize your Excel experience using professional spreadsheet application development tips from his own personal bookshelf. Check out *Excel 2013 Power Programming with VBA* today!

This formula will provide the following resultset:

27° 19.9581'

=TEXT(TRUNC(F14), "0") & CHAR(176) &" " & TEXT((F14-TRUNC(F14))*60,"0.0000000") & "'"

27° 19.9581'

=TEXT(TRUNC(F14), "0") & CHAR(176) &" " & TEXT((F14-TRUNC(F14))*60,"0.0000000") & "'"

my longitudes and latitudes have seconds that are over 60 how do i fix this

Thank you for the Help!

@dirk

This formula should do the trick:

=TRUNC(F14)&"° "&ROUND(MOD(ABS(F14),1)*60,4)&"'"

This formula should do the trick:

=TRUNC(F14)&"° "&ROUND(MOD(ABS(F14),1)*60,4)&"'"

I am needing this formula to only have degrees and minutes. i was able to figure it out to round the minitues, but this is what i need.

Ex 27.33263539 degrees

to 27° 19.9581'

=TEXT(TRUNC(F14), "0" & CHAR(176) & " ") & TEXT(INT((ABS(F14)

- INT(ABS(F14)))*60), "0' ")

this is what i used, but i cant get it to show decimal of minute

your help would be greatly appreciated.

Ex 27.33263539 degrees

to 27° 19.9581'

=TEXT(TRUNC(F14), "0" & CHAR(176) & " ") & TEXT(INT((ABS(F14)

- INT(ABS(F14)))*60), "0' ")

this is what i used, but i cant get it to show decimal of minute

your help would be greatly appreciated.