Apple Numbers: конвертировать формат даты M/D/YY или D/M/YY в YYYY-MM-DD

Примечание: у меня был этот вопрос, я не смог найти ответ и могу ответить сам. Я надеюсь, что это может быть использовано другими.

Используя Apple Numbers, как я могу преобразовать формат даты M/D/YY в YYYY-MM-DD с помощью формулы?

M / D / YY Примеры:

  • 12/31/17 " 2017-12-31
  • 1/1/17 " 2017-01-01

D/M/YY Примеры:

  • 31/12/17 " 2017-12-31
  • 1/1/17 " 2017-01-01

1 ответ

Полная формула (включая год, месяц, день) при обращении к ячейке таблицы A1 (в этом примере) с датой в любом M/D/YY или же D/M/YY:

M/D/YYвYYYY-MM-DD

"20"&RIGHT(A1;2)&"-"&IF(LEN(MID(A1;1;FIND("/";A1;1)−1))=1;"0"&MID(A1;1;FIND("/";A1;1)−1);MID(A1;1;FIND("/";A1;1)−1))&"-"&IF(LEN(MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1))=1;"0"&MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1);MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1))

D/M/YYвYYYY-MM-DD

"20"&RIGHT(A1;2)&"-"&IF(LEN(MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1))=1;"0"&MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1);MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1))&"-"&IF(LEN(MID(A1;1;FIND("/";A1;1)−1))=1;"0"&MID(A1;1;FIND("/";A1;1)−1);MID(A1;1;FIND("/";A1;1)−1))


Одиночные поля

Для некоторого фона и для извлечения отдельных полей:

  • Год: "20"&RIGHT(A1;2)
  • Первый номер (месяц или день): IF(LEN(MID(A1;1;FIND("/";A1;1)−1))=1;"0"&MID(A1;1;FIND("/";A1;1)−1);MID(A1;1;FIND("/";A1;1)−1))
  • Второй номер (месяц или день): IF(LEN(MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1))=1;"0"&MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1);MID(A1;FIND("/";A1)+1;FIND("/";A1;FIND("/";A1)+1)−FIND("/";A1)−1))
Другие вопросы по тегам