matlab datenum to excel datetime

33 views (last 30 days)
Adam
Adam on 20 Feb 2013
Commented: Rik on 23 Feb 2021
Hello Forum, This might really be an Excel question, but is there an Excel method that converts the Matlab datenum to an Excel date time, in Excel?
Thanks

Answers (3)

Azzi Abdelmalek
Azzi Abdelmalek on 20 Feb 2013
Edited: Azzi Abdelmalek on 20 Feb 2013
That mean you are exporting your data from Matlab to Excell, then you can set the format you need in Matlab and export it to Excell file. Example
yourdates=datestr(datenum(2013,1,(1:365)),'dd-mmm-yyyy')
xlswrite('file.xls',cellstr(yourdates))
Then in Excell you can use other formats

Oleg Komarov
Oleg Komarov on 20 Feb 2013
In MATLAB you can convert MATLAB datenums into EXCEL datenums with the function m2xdate(). Then export to excel and set the column with the serial dates to type date.

Jan
Jan on 20 Feb 2013
What kind of "Excel date time" do you mean? The serial date number? See:
Please note, that Excel uses another start point for the serial datenumbers when run on Macs, 1904 instead of 1900. Isn't this cute?
  2 Comments
adams13
adams13 on 23 Feb 2021
Now it is even better, Excel for windows has a setting "Use 1904 date system". You have to activate it to let Excel show negative time differences (all the dates in the workbook will be changed if you change it).
So, if you whant to read/write the date from Matlab, you have to figure out which system is used in a particular file and provide correct parameter to
matlab_value = datetime(excel_value, 'ConvertFrom', 'excel')
matlab_value = datetime(excel_value, 'ConvertFrom', 'excel1904')
or another way
excel_value = exceltime(matlab_value, '1900')
excel_value = exceltime(matlab_value, '1904')
Rik
Rik on 23 Feb 2021
As if you would need additional reasons to doubt the interoperability of Excel.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!