Уникальный формат военной даты

Для некоторых целей военные используют вариант так называемой «юлианской даты» для записи определенной даты. Этот специальный формат даты состоит из цифр года, за которыми следует абсолютный день года. Таким образом, 9 июля 2013 года будет равно 13190. Это показывает год (13, который соответствует 2013 году), за которым следует 190-й день года (9 июля).

Не только военные. в использовании таких дат. Некоторые другие отрасли также полагаются на этот тип формата даты. Однако Excel не полагается на этот тип формата. Вместо этого он использует более распространенное форматирование для отображения дат и собственный формат серийных номеров для внутреннего хранения дат. Если вам нужно работать с датами по юлианскому календарю (возможно, вы служите в армии), вы можете задаться вопросом, есть ли способ форматировать даты таким образом.

Короткий ответ: нет родной способ это сделать. Возможности настраиваемого форматирования Excel не позволяют указать способ отображения дня года. Таким образом, это означает, что вы должны использовать формулу для возврата либо числового значения для юлианской даты, либо текстовой строки, содержащей юлианскую дату.

Если вы хотите вернуть текстовую строку, содержащую отформатированный date, то вы можете использовать следующую формулу:

 = RIGHT (YEAR (A1), 2) & (A1-DATE (YEAR (A1), 1,1) +1)  

Эта формула предполагает, что ячейка A1 содержит обычную дату Excel. Первая часть формулы (часть перед амперсандом) возвращает последнюю цифру года, а часть после амперсанда вычитает первый день текущего года из даты, которую нужно преобразовать, а затем прибавляет 1 к этой дате. В результате получается порядковый день в году.

Если часть дня года в юлианской дате всегда должна состоять из трех цифр, вам нужно изменить формулу еще немного. . Как написано выше, формула будет возвращать 1, 2 или 3 цифры для последней части формулы. Если всегда должно быть 3, используйте вместо этого:

 = RIGHT (YEAR (A1), 2) & RIGHT ("000" & (A1-DATE (YEAR (A1), 1  , 1) +1), 3) 

Если вы предпочитаете, чтобы формула возвращала число, а не текстовую строку, вы можете заключить всю формулу в функцию VALUE или просто умножить цифра года на 1000 в формуле. Оба подхода показаны здесь:

 = VALUE (RIGHT (YEAR (A1), 2) & RIGHT ("000" & (A1-DATE (YEAR (A1), 1,1) +1)  , 3)) = RIGHT (YEAR (A1), 1) * 1000 + (A1-DATE (YEAR (A1), 1,1) +1) 

Вы также можете найти информацию о работе с юлианскими датами в базе знаний Microsoft:

 http://support.microsoft.com/kb/214099 

В этой статье указано, что это для Excel 2000, но формулы, которые он представляет, хорошо работают и в других версиях Excel. На веб-сайте Чипа Пирсона также доступна дополнительная информация:

 http://www.cpearson.com/excel/jdates.htm 

Оцените статью
Frestage.ru
Добавить комментарий