bottom
Great ExcelTips!
         
Your e-mail address is safe!
Close Note

Tips.Net > ExcelTips Home > Formulas > Data Conversion > Converting UNIX Date/Time Stamps

Converting UNIX Date/Time Stamps

Summary: If you import information generated on a UNIX system, you may need to figure out how to change the date/time stamps to something that Excel can recognize and work with. The conversion is easy, once you understand the way in which the date/time stamps are figured. (This tip works with Microsoft Excel 97, Excel 2000, Excel 2002, Excel 2003, and Excel 2007.)

When you import information created by other computer programs, you may run into a situation where your data includes a date/time stamp created by UNIX. Once imported, you are then faced with the challenge of converting the date/time stamp to an Excel date/time format. Doing the conversion is rather easy, once you understand how both systems save their time.

Time stamps in UNIX are stored as an integer value representing the number of seconds since 1 January 1970. Further, time stamps are stored in GMT time, meaning there has been no adjustment to the stamp to reflect time zones or time-zone variations (such as Daylight Savings Time).

Excel, on the other hand, stores time stamps as a real number representing the number of days since 1 January 1900 (the default setting). The integer portion of the time stamp represents the number of full days, while the portion of the time stamp to the right of the decimal point represents the fractional portion of a day, which can be converted to hours, minutes, and seconds.

To do a straight conversion of a UNIX time stamp to the Excel system, all you need to do is use this formula:

=UnixTime / 86400 + 25569

In this example, UnixTime can be either a named cell containing the integer UNIX time stamp value, or it can be replaced with the actual integer value. Since the UNIX time stamp is stored as seconds, the division by 86400 is necessary to convert to days, which is used by Excel. (86400 is the number of seconds in a day.) You then add 25569, which is the number of days between 1 January 1900 and 1 January 1970. (It is the value returned if you use the =DATE(1970,1,1) function.)

Remember, that this does a straight conversion. You may still need to adjust for time zones. If the UNIX system recorded something occurring at 5:00 pm local time, you need to determine how many hours difference there is between you and GMT. If there happens to be four hours, then you need to adjust your conversion formula accordingly, as shown here:

=UnixTime / 86400 + 25569 - 4 / 24

If you are unsure of how your time zone relates to GMT, you can find the needed information here:

http://tycho.usno.navy.mil/zones.html

Tip #2051 applies to Microsoft Excel versions: 97 | 2000 | 2002 | 2003 | 2007


Organize Your Data! Using the powerful sorting capabilities of Excel can help you get your data into just the order you need. Find out how you can use the full capabilities of sorting to your benefit.
 
Check out ExcelTips: Serioius Sorting today!

Helpful Links

Ask an Excel Question
Make a Comment

Tips.Net Home

ExcelTips FAQ
ExcelTips Premium

Learn Access Now

Beauty Tips
Bugs and Pests Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Organizing Tips
Pet Tips
Word2007 Tips
WordTips

Advertise on the
ExcelTips Site

 

Great Info!

Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your e-mail address and click "Subscribe."
     
(Your e-mail address will never be shared with anyone, ever.)