x2mdate

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

Описание

пример

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

Номера дат MATLAB начинаются со 1 = 1 января 0000 года н.э., следовательно, существует различие 693960 относительно системы дат 1900 года, или 695422 относительно системы дат 1904 года. Эта функция используется с программным обеспечением Spreadsheet 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

  • В MATLAB, 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