exponenta event banner

x2mdate

Серийный номер даты Excel до серийного номера даты MATLAB или формата datetime

Описание

пример

MATLABDate = x2mdate(ExcelDateNumber,Convention) преобразует серийные номера Excel ® в серийные номера MATLAB ® или формат datetime.

Номера дат MATLAB начинаются с 1 = 1 января 0000 года н.э., следовательно, имеется разница 693960 относительно системы дат 1900 года или 695422 относительно системы дат 1904 года. Эта функция полезна в программном обеспечении электронной таблицы Link™.

MATLABDate = x2mdate(___,outputType) преобразует серийные даты Excel в серийные даты MATLAB или формат datetime, используя дополнительный входной аргумент для outputType.

Тип вывода определяется опциональным outputType вход. Если outputType является 'datenum', то MATLABDate - порядковый номер даты. Если outputType является 'datetime', то MATLABDate является массивом datetime. По умолчанию outputType является 'datenum'.

Примеры

свернуть все

При наличии номеров дат Excel ® в системе 1904 преобразуйте их в серийные номера дат MATLAB ®, а затем в векторы символов даты.

ExDates = [35423  35788  36153];
MATLABDate = x2mdate(ExDates, 1)
MATLABDate = 1×3

      730845      731210      731575

datestr(MATLABDate)
ans = 3x11 char array
    '25-Dec-2000'
    '25-Dec-2001'
    '25-Dec-2002'

Либо используйте дополнительный ввод outputType определить 'datetime' для возврата формата datetime.

ExDates = [35423  35788  36153];
MATLABDate = x2mdate(ExDates, 1,'datetime')
MATLABDate = 1x3 datetime
   25-Dec-2000   25-Dec-2001   25-Dec-2002

Входные аргументы

свернуть все

Порядковый номер даты Excel, указанный как скаляр или вектор серийных номеров даты Excel.

Типы данных: double

Флаг для системы дат Excel, заданный как скаляр или вектор как числовой элемент со значением 0 или 1. Convention должен быть скаляром или иметь тот же размер, что и ExcelDateNumber.

Когда Convention = 0 (по умолчанию), система дат Excel 1900 действует. Когда Convention = 1, система дат Excel 1904 в используется.

В системе дат Excel 1900 серийная дата Excel номер 1 соответствует 1 января 1900 года н.э. В системе дат Excel 1904 дата номер 0 - 1 января 1904 года н. э.

Из-за программного ограничения в программном обеспечении Excel 1900 год считается високосным. В результате, все данные DATEVALUE, сообщенные программным обеспечением Excel в период с 1 января 1900 г. по 28 февраля 1900 г. (включительно), отличаются от значений, сообщенных на 1. Например:

  • В программном обеспечении Excel, 1 января 1900 г. = 1

  • В МАТЛАБ, 1 января 1900 года - 693960 (для системы дат 1900 года) = 2

    datenum('Jan 1, 1900') - 693960
    ans =
    
         2

Типы данных: logical

Формат даты вывода, заданный как символьный вектор со значениями 'datenum' или 'datetime'. Продукция MATLABDate в формате серийной даты, если 'datenum' указан или формат datetime, если 'datetime' указывается. По умолчанию вывод выполняется в формате серийной даты.

Типы данных: char

Выходные аргументы

свернуть все

MATLAB дата, возвращенная как серийные номера даты или формат datetime.

Тип вывода определяется опциональным outputType входной аргумент. Если outputType является 'datenum', то MATLABDate - порядковый номер даты. Если outputType является 'datetime', то MATLABDate является массивом datetime. По умолчанию outputType является 'datenum'.

Представлен до R2006a