Функция преобразования даты в число в excel

  • Редакция Кодкампа

17 авг. 2022 г.
читать 2 мин


В этом руководстве объясняется, как преобразовать дату в число в трех различных сценариях:

1. Преобразуйте одну дату в число

2. Преобразуйте несколько дат в числа

3. Преобразование даты в количество дней с другой даты

Давайте прыгать!

Пример 1: преобразование одной даты в число

Предположим, мы хотим преобразовать дату «10.02.2022» в число в Excel.

Для этого мы можем использовать функцию ДАТАЗНАЧ в Excel:

=DATEVALUE("2/10/2022")

По умолчанию эта функция вычисляет количество дней между заданной датой и 01.01.1900 .

На следующем снимке экрана показано, как использовать эту функцию на практике:

Это говорит нам о том, что между 10.02.2022 и 01.01.1900 существует разница в 44 602 дня.

Пример 2. Преобразование нескольких дат в числа

Предположим, у нас есть следующий список дат в Excel:

Чтобы преобразовать каждую из этих дат в число, мы можем выделить диапазон ячеек, содержащих даты, затем щелкнуть раскрывающееся меню «Числовой формат » на вкладке « Главная » и выбрать « Число »:

Это автоматически преобразует каждую дату в число, представляющее количество дней между каждой датой и 01.01.1900 :

Пример 3. Преобразование даты в количество дней, прошедших с другой даты

Мы можем использовать следующую формулу для преобразования даты в количество дней, прошедших с другой даты:

=DATEDIF( B2 , A2 , "d")

Эта конкретная формула вычисляет количество дней между датой в ячейке B2 и датой в ячейке A2 .

На следующем снимке экрана показано, как использовать формулу DATEDIF для расчета количества дней между датами в столбце A и 01.01.2022:

Вот как интерпретировать значения в столбце B:

  • Между 01.01.2022 и 01.04.2022 есть 3 дня.
  • Между 01.01.2022 и 01.01.2022 8 дней.
  • Между 01.01.2022 и 15.01.2022 14 дней.

И так далее.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в Excel:

Как автозаполнять даты в Excel
Как использовать СЧЁТЕСЛИМН с диапазоном дат в Excel
Как рассчитать среднее значение между двумя датами в Excel

Каждая функция привнося выражение к определенному тип данных.

Синтаксис

CBool(

выражение

)

CByte(

выражение

)

CCur(

выражение

)

CDate(

выражение

)

CDbl(

выражение

)

CDec(

выражение

)

CInt(

выражение

)

CLng(

выражение

)

CSng(

выражение

)

CStr(

выражение

)

CVar(

выражение

)

Обязательный аргумент выражениеаргумент — это любое строковое выражение или числовое выражение.

Возвращаемые типы

Тип возвращаемого значения определяется по имени функции в соответствии со следующей таблицей:

Функция

Тип возвращаемого значения

Диапазон аргумента

выражение

CBool

Boolean

Любое допустимое строковое или числовое выражение.

CByte

Byte

От 0 до 255.

CCur

Currency

От -922 337 203 685 477,5808 до 922 337 203 685 477,5807.

CDate

Date

Любое допустимое выражение даты.

CDbl

Double

От -1,79769313486231E308 до
-4,94065645841247E-324 для отрицательных значений и от 4,94065645841247E-324 до 1,79769313486232E308 для положительных.

CDec

Decimal

+/-79 228 162 514 264 337 593 543 950 335 для чисел без дробной части. Для чисел с 28 десятичными знаками допустимый диапазон составляет
+/-7,9228162514264337593543950335. Наименьшее допустимое ненулевое число — 0,0000000000000000000000000001.

CInt

Integer

От -32 768 до 32 767, дробная часть округляется.

CLng

Long

От -2 147 483 648 до 2 147 483 647, дробная часть округляется.

CSng

Single

От -3,402823E38 до -1,401298E-45 для отрицательных значений и от 1,401298E-45 до 3,402823E38 для положительных.

CStr

String

Результат, возвращаемый функцией CStr, зависит от аргумента выражение.

CVar

Variant

Тот же диапазон, что и для числов Double. Такой же диапазон, как и для строк для не числов.

Замечания

Если передаваемое функции выражение находится за пределами диапазона типа данных, в который оно преобразуется, возникает ошибка.

Как правило, функции преобразования типов используются в тексте программ для того, чтобы указать, что результатом той или иной операции должны стать данные определенного типа, а не типа, заданного по умолчанию. Например, с помощью функции CCur можно принудительно перейти к вычислениям в денежном формате в тех случаях, в которых обычно используются действия с числами с обычной точностью, двойной точностью или с целыми числами.

Функции преобразования типа данных следует использовать вместо функции Val для преобразования типов данных в приложениях, поддерживающих различные региональные стандарты. Например, при использовании функции CCur десятичные разделители, разделители групп разрядов и параметры денежных единиц распознаются в соответствии с языковыми и региональными параметрами компьютера.

Если дробная часть целого числа строго равна 0,5, функции CInt и CLng всегда округляют результат до ближайшего четного числа. Например, 0,5 округляется до 0, а 1,5 — до 2. В отличие от функций CInt и CLng, в функциях Fix и Int дробная часть не округляется, а отбрасывается. Кроме того, функции Fix и Int всегда возвращают значение того же типа, что и переданное им выражение.

Для определения возможности преобразования даты в дату или время используется функция IsDate. Функция CDate распознает литералы даты и времени, а также некоторые числа, которые находятся в диапазоне допустимых дат. При преобразовании числа в дату преобразуется целая часть числа. Дробная часть преобразуется во время суток, начиная с полуночи.

CDate распознает форматы даты в соответствии с языковые стандарты системным параметром. Правильный порядок дат, месяца и года может быть определен не в том формате, который не является распознаемой датой. Кроме того, длинный формат даты не распознается, если он также содержит строку дней недели.

Функция CVDate предназначена для обеспечения совместимости с предыдущими версиями Visual Basic. Синтаксис функции CVDate идентичен синтаксису функции CDate, однако функция CVDate возвращает не результат типа Date, а результат типа Variant с подтипом Date. Поскольку теперь реализован встроенный тип Date, необходимость в функции CVDate отпадает. Того же результата можно добиться, преобразовав выражение в тип Date и присвоив это значение переменной типа Variant. Этот способ позволяет преобразовать все прочие встроенные типы в эквивалентные им подтипы Variant.

Примечание:  Функция CDec не возвращает отдельный тип данных. Вместо этого она всегда возвращает результат типа Variant, значение которого преобразовано в подтип Decimal.

Примеры запросов


Выражение


Результаты:

SELECT SalePrice,FinalPrice,CBool(SalePrice>FinalPrice) AS Expr1 FROM productSales;

Возвращает значения «ЦенаПродажи», «ПоследняяЦена» и оценивает, превышает ли Цена конечная цена. Возвращает «-1», если истина, и «0», если ложь.

SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле «Количество» в формат «Количество» и отображает в столбце Expr1 значение «ProductID», преобразует значения в поле «Количество» в формат «Валюта» и отображает в столбце Expr1.

SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения поля DateofSale в формат Date и отображает значения в столбце Expr1.

SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле Discount в формат Double и отображает значения в столбце Expr1.

SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле Discount в формат Integer и отображает значения в столбце Expr1.

SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле Discount в формат Long и отображает в столбце Expr1.

SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле «Скидка» в single format и отображает в столбце «Expr1».

SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле Discount в строковом формате и отображает значения в столбце Expr1.

SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales;

Возвращает значение «ProductID», преобразует значения в поле «Скидка» в значение Double для числных значений и String для не числных значений.

Примеры VBA

Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.

Функция CBool

Совет:  В Access 2010 и более поздних версиях есть построитель выражений с поддержкой IntelliSense, который помогает создавать выражения.

В этом примере функция CBool используется для преобразования выражения в тип Boolean. Если выражение разрешается в ненулевое значение, функция CBool возвращает значение True; в противном случае она возвращает значение False.

Dim A, B, Check
A = 5: B = 5 ' Initialize variables.
Check = CBool(A = B) ' Check contains True.
A = 0 ' Define variable.
Check = CBool(A) ' Check contains False.

Функция CByte

В этом примере функция CByte используется для преобразования выражения в тип Byte.

Dim MyDouble, MyByte
MyDouble = 125.5678 ' MyDouble is a Double.
MyByte = CByte(MyDouble) ' MyByte contains 126.

Функция CCur

В этом примере функция CCur используется для преобразования выражения в тип Currency.

Dim MyDouble, MyCurr
MyDouble = 543.214588 ' MyDouble is a Double.
MyCurr = CCur(MyDouble * 2)
' Convert result of MyDouble * 2 (1086.429176) to a
' Currency (1086.4292).

Функция CDate

В этом примере функция CDate используется для преобразования выражения в тип Date. Как правило, не рекомендуется определять дату и время в виде строк (как показано в этом примере). Вместо этого пользуйтесь литералами даты и времени, например #2/12/1969# и #4:45:23 PM#.

Dim MyDate, MyShortDate, MyTime, MyShortTime
MyDate = "February 12, 1969"
' Convert to Date data type.
MyShortDate = CDate(MyDate)
MyTime = "4:35:47 PM"
' Convert to Date data type.
MyShortTime = CDate(MyTime)

Функция CDbl

В этом примере функция CDbl используется для преобразования выражения в тип Double.

Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Convert result to a Double.
MyDouble = CDbl(MyCurr * 8.2 * 0.01)

Функция CDec

В этом примере функция CDec используется для преобразования выражения в тип Decimal.

Dim MyDecimal, MyCurr
MyCurr = 10000000.0587 ' MyCurr is a Currency.
MyDecimal = CDec(MyCurr) ' MyDecimal is a Decimal.

Функция CInt

В этом примере функция CInt используется для преобразования выражения в тип Integer.

Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble is a Double.
MyInt = CInt(MyDouble) ' MyInt contains 2346.

Функция CLng

В этом примере функция CLng используется для преобразования выражения в тип Long.

Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45
MyVal2 = 25427.55 ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1)
' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2)
' MyLong2 contains 25428.

Функция CSng

В этом примере функция CSng используется для преобразования выражения в тип Single.

Dim MyDouble1, MyDouble2, MySingle1, MySingle2
' MyDouble1, MyDouble2 are Doubles.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1)
' MySingle1 contains 75.34211.
MySingle2 = CSng(MyDouble2)
' MySingle2 contains 75.34216.

Функция CStr

В этом примере функция CStr используется для преобразования выражения в тип String.

Dim MyDouble, MyString
MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble)
' MyString contains "437.324".

Функция CVar

В этом примере функция CVar используется для преобразования выражения в тип Variant.

Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.

В этом руководстве я расскажу о нескольких методах решения различных случаев преобразования даты в числовой или текстовый формат в Excel.
дата документа в номер текста 1

  • 1. Преобразование даты в текст
    1.1 Преобразование даты в текст в формате мм / дд / гггг
    1.2 Преобразование даты в текст в формате mmddyyyy
    1.3 Преобразование даты в текст в других форматах
  • 2. Преобразование даты в число
    2.1 Преобразование даты в число в 5-значном формате
    2.2 Преобразование даты в число в формате mmddyyyy
  • 3. Преобразование даты в месяц / день / год или другие форматы даты с помощью щелчков мышью.
  • 4. Загрузите образец файла.

1. Преобразование даты в текст

В этом разделе представлены методы преобразования даты в текст в Excel.

Чтобы преобразовать дату в текст, вам нужна всего одна формула.

Формула: = ТЕКСТ (дата, «формат_даты»)

Ссылка: дата: ячейка с датой, которую вы хотите преобразовать в текст
Формат даты: формат, который вы хотите отобразить после преобразования даты в текст

В следующих случаях я расскажу вам, как использовать эту формулу.

1.1 Преобразование даты в текст в формате мм / дд / гггг

Например, для преобразования даты в ячейке A3 в мм / дд / гггг используйте формулу
= ТЕКСТ (A3; «мм / дд / гггг»)
нажмите Enter ключ
дата документа в номер текста 2

Если вы хотите преобразовать дату в ячейке A8 в дд / мм / гггг, используйте эту формулу
= ТЕКСТ (A8; «дд / мм / гггг»)
нажмите Enter ключ
дата документа в номер текста 3

1.2 Преобразование даты в текст в формате mmddyyyy или ddmmyyyy

Если вы хотите преобразовать дату в ячейке A13 в текст, но в формате mmddyyyy, введите эту формулу
= ТЕКСТ (A13, «ммддйгг»)
нажмите Enter ключ
дата документа в номер текста 4

Если вы хотите преобразовать дату в ячейке A18 в текст в формате ddmmyyyy, введите эту формулу
= ТЕКСТ (A18, «ддммйгг»)
нажмите Enter ключ
дата документа в номер текста 5

1.3 Преобразование даты в текст в других форматах

Фактически, в любой текстовый формат, в который вы хотите преобразовать дату, просто введите нужный формат в кавычки в формуле.

Формула = ТЕКСТ (A3; «мм-дд-гггг») = ТЕКСТ (A3; «мм / дд») = ТЕКСТ (A3; «дд») = ТЕКСТ (A3; «д / м / г»)
Результат 23-12-2019 23/12 23 23/12/19


2. Преобразование даты в число

В этом разделе я предлагаю методы преобразования даты в число в 5-значном формате mmddyyyy.

2.1 Преобразование даты в число в 5-значном формате

Если вы хотите преобразовать дату в число в 5-значном формате, выполните следующие действия:

1. Щелкните правой кнопкой мыши ячейку, содержащую дату, которую вы хотите преобразовать в число, и в контекстном меню выберите Формат ячеек общий.
дата документа в номер текста 6

2. в Формат ячеек диалог , под Число вкладка , выберите Общие из панели Категория.
дата документа в номер текста 7

3. Нажмите OK. Дата в выбранной ячейке преобразована в числовую строку в формате ммддыггг.
дата документа в номер текста 8

2.2 Преобразование даты в число в формате mmddyyyy или ddmmyyyy

Если вы хотите преобразовать дату в числовую строку в формате mmddyyyy или ddmmyyyy, вы также можете применить функцию Format Cells.

1. Щелкните правой кнопкой мыши ячейку, содержащую дату, которую вы хотите преобразовать в число, и в контекстном меню выберите Формат ячеек общий.

2. в Формат ячеек диалога под Число вкладка, выберите На заказ из Категория панель, затем перейдите в правый раздел, введите ММДДГГГГ в Тип текстовое окно.
дата документа в номер текста 9

3. Нажмите OK. Дата в выбранной ячейке преобразована в числовую строку в формате ммддйгг
дата документа в номер текста 10

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

Форматировать ячейку как настраиваемую ддммгггг ддммгг ммгггг ггггммдд
Монитор 23022019 230219 022019 20190223

3. Преобразование даты в месяц / день / год или другие форматы даты с помощью щелчков мышью.

Если вы хотите быстро преобразовать дату в месяц, день, год или другие форматы даты, Применить форматирование даты полезности Kutools for Excel будет хорошим выбором для использования.

Попрощайтесь с мышиной рукой и шейным спондилезом

300 продвинутых инструментов Kutools for Excel решить 80% Задачи Excel за считанные секунды, избавят вас от тысяч щелчков мышью.

Легко справляйтесь с 1500 рабочими сценариями, не нужно тратить время на поиск решений, у вас будет много времени, чтобы наслаждаться жизнью.

Ежедневно повышайте производительность на 80% для более чем 110000 высокоэффективных людей, включая вас.

Больше не мучиться мучительными формулами и VBA, дайте своему мозгу отдых и радостное рабочее настроение.

30— дневная бесплатная пробная версия со всеми функциями, 30день назад деньги без причины.

Лучшее тело создает лучшую жизнь.

После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:

1. Выделите ячейки, содержащие даты, которые вы хотите преобразовать в другие форматы дат.

2. Нажмите Кутулс > Формат > Применить форматирование даты.
дата документа в номер текста 11

3. в Применить форматирование даты диалоговом окне выберите формат даты, который вы хотите использовать в Форматирование даты панель, тем временем преобразованный результат будет предварительно показан справа предварительный просмотр панель.
дата документа в номер текста 12

4. Нажмите Ok, то выбранные вами даты будут преобразованы в выбранный вами формат даты.
дата документа в номер текста 13

Преобразование даты в несколько форматов даты Индивидуальность с помощью щелчков

применить форматирование даты

Дополнительные советы по преобразованию даты


Скачать образец файла

образец


Рекомендуемые инструменты для повышения производительности

Вкладка Office — просмотр, редактирование и управление документами с вкладками в Microsoft Office 2019 — 2003 и Office 365

вкладка office

Kutools for Excel — Объединяет более 300 расширенных функций и инструментов для Microsoft Excel.

вкладка kutools

вкладка kutoolsp

На чтение 9 мин. Просмотров 29.8k.

Содержание

  1. Преобразование строки даты в дату
  2. Преобразовать дату в Юлианский формат
  3. Преобразование даты в месяц и год
  4. Преобразование даты в текст
  5. Преобразование даты текста дд/мм/гг в мм/дд/гг
  6. Преобразование текста в дату

Преобразование строки даты в дату

= ЛЕВСИМВ (дата; 10) + ПСТР (дата; 12;8)

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

Чтобы преобразовать строку даты в дату-время (дату со временем), вы можете разобрать текст на отдельные компоненты, а затем построить правильное время и дату.

Преобразование строки даты в дату

В показанном примере мы используем приведенные ниже формулы.

Для извлечения даты формула в C5:

= ДАТАЗНАЧ (ЛЕВСИМВ(B5;10))

Чтобы извлечь дату, формула в D5:

= ВРЕМЗНАЧ (ПСТР (B5;12;8))

Чтобы собрать дату-время, формула в E5:

= C5 + D5

Чтобы получить дату, мы извлекаем первые 10 символов значения с помощью ЛЕВСИМВ:

ЛЕВСИМВ(B5;10) // возвращает «2015-03-01»

Результатом является текст, поэтому, чтобы заставить Excel интерпретироваться как дата, мы помещаем ЛЕВСИМВ в ДАТАЗНАЧ, который преобразует текст в правильное значение даты Excel.

Чтобы получить время, мы извлекаем 8 символов из середины значения с ПСТР:

ПСТР (B5;12;8) // возвращает «12:28:45»

Опять же, результатом является текст. Чтобы заставить Excel интерпретироваться как время, мы помещаем ПСТР в ВРЕМЗНАЧ, который преобразует текст в правильное значение времени Excel.

Чтобы построить окончательную дата-время, мы просто добавляем значение даты к значению времени.

Хотя этот пример извлекает дату и время отдельно для ясности, вы можете комбинировать формулы, если хотите. Следующая формула извлекает дату и время и объединяет их в один шаг:

= ЛЕВСИМВ(дата; 10) + ПСТР(дата; 12;8)

Обратите внимание, что в этом случае значения ДАТАЗНАЧ и ВРЕМЯЗНАЧ не нужны, поскольку математическая операция (+) заставляет Excel автоматически принудительно передавать текстовые значения в числа.

Преобразовать дату в Юлианский формат

= ГОД (дата) и ТЕКСТ (дата-ДАТА (ГОД (дата); 1;0); «000»)

Если вам нужно преобразовать дату в формат даты в Юлиане в Excel, вы можете сделать это, построив формулу, в которой используются функции ТЕКСТ, ГОД и ДАТА.

Преобразовать дату в Юлианский формат

«Формат даты в Юлиане» относится к формату, в котором значение года для даты комбинируется с «порядковым днем для этого года» (т. Е. 14-й день, 100-й день и т. д.) для формирования штампа даты.

Есть несколько вариантов. Дата в этом формате может включать в себя 4-значный год (гггг) или год с двумя цифрами (гг), а номер дня может быть заполнен нулями или может быть не дополнен тремя цифрами. Например, на дату 21 января 2017 года вы можете увидеть:

1721 // ГГД

201721 // ГГГГ

2017021 // ГГГГДДД

Для двухзначного года + число дня без дополнения используйте:

= ТЕКСТ (B5; «гг») & B5-ДАТА(ГОД (B5); 1;0)

Для двузначного года + число дня, дополненное нулями до 3-х мест:

= ТЕКСТ (B5; «гг») & ТЕКСТ (B5-ДАТА (ГОД (B5); 1;0); «000»)

Для четырехзначного года + число дня, дополненное нулями до 3-х мест:

= ГОД(B5) & ТЕКСТ(B5-ДАТА(ГОД(B5); 1;0); «000»)

Эта формула строит окончательный результат в 2 частях, объединенных конъюнкцией с оператором амперсанда (&).

Слева от амперсанда мы генерируем значение года. Чтобы извлечь 2-значный год, мы можем использовать функцию ТЕКСТ, которая может применять числовой формат внутри формулы:

ТЕКСТ (B5; «гг»)

Чтобы извлечь полный год, используйте функцию ГОД:

ГОД (B5)

С правой стороны амперсанда нам нужно определить день года. Мы делаем это, вычитая последний день предыдущего года с того дня, с которым мы работаем. Поскольку даты — это просто серийные номера, это даст нам «n» день года.

Чтобы получить последний день года предыдущего года, мы используем функцию ДАТА. Когда вы даете ДАТА значение года и месяца и ноль на день, вы получаете последний день предыдущего месяца. Так:

B5-ДАТА(ГОД (B5); 1;0)

Дает нам последний день предыдущего года, который на примере 31 декабря 2015 года.

Теперь нам нужно заполнить значение дня нулями. Опять же, мы можем использовать функцию ТЕКСТ:

ТЕКСТ (B5-ДАТА (ГОД (B5); 1;0); «000»)

Если вам нужно преобразовать юлианскую дату назад к обычной дате, вы можете использовать формулу, которая анализирует юлианскую дату и пробегает ее через функцию даты с месяцем 1 и днем, равным «n-му» дню. Например, это создаст дату с Юлианской датой ггггддд, например, 1999143.

= ДАТА(ЛЕВСИМВ(A1;4); 1; ПРАВСИМВ(A1;3)) // для ггггддд

Если у вас есть только номер дня (например, 100, 153 и т. д.), вы можете жестко закодировать год и вставить следующий день:

= ДАТА (2016;1; A1)

Где A1 содержит номер дня. Это работает, потому что функция ДАТА умеет настраивать значения вне диапазона.

Преобразование даты в месяц и год

= ТЕКСТ(дата; «ггггмм»)

Чтобы преобразовать нормальную дату Excel в формат ггггмм (например, 9/1/2017> 201709), вы можете использовать функцию ТЕКСТ.

Преобразование даты в месяц и год

В показанном примере формула в C5:

= ТЕКСТ (B5; «ггггмм»)

Функция TEКСT применяет заданный числовой формат к числовому значению и возвращает результат в виде текста.

В этом случае предоставляется формат числа «ггггмм», который присоединяется к 4-значному году с 2-значным значением месяца.

Если вы хотите отображать дату только с указанием года и месяца, вы можете просто применить формат пользовательских номеров «ггггмм» к датам. Это заставит Excel отображать год и месяц вместе, но не изменит базовую дату.

Преобразование даты в текст

= ТЕКСТ (дата; формат)

Если вам нужно преобразовать даты в текст (т. е. дату в преобразование строк), вы можете использовать функцию ТЕКСТ. Функция ТЕКСТ может использовать такие шаблоны, как «дд / мм / гггг», «гггг-мм-дд» и т. д., чтобы преобразовать действительную дату в текстовое значение.

Преобразование даты в текст

Даты и время в Excel хранятся в виде серийных номеров и преобразуются в удобочитаемые значения «на лету» с использованием числовых форматов. Когда вы вводите дату в Excel, вы можете применить числовой формат, чтобы отобразить эту дату по своему усмотрению. Аналогичным образом, функция ТЕКСТ позволяет преобразовать дату или время в текст в предпочтительном формате. Например, если дата 9 января 2000 года введена в ячейку A1, вы можете использовать TEКСТ, чтобы преобразовать эту дату в следующие текстовые строки следующим образом:

= ТЕКСТ(A1; «ммм») // «Янв»

= TEКСТ(A1; «дд/мм/гггг») // «09/01/2012»

= ТЕКСТ(A1; «дд-ммм-гг») // «09-Янв-12»

Вы можете использовать TEКСТ для преобразования дат или любого числового значения в фиксированном формате. Вы можете просмотреть доступные форматы, перейдя в меню «Формат ячеек» (Win: Ctrl + 1, Mac: Cmd + 1) и выбрав различные категории в списке слева.

Преобразование даты текста дд/мм/гг в мм/дд/гг

= ДАТА(ПРАВСИМВ(A1;2) + 2000; ПСТР(A1;4;2); ЛЕВСИМВ(A1;2))

Преобразование даты текста дд/мм/гг в мм/дд/гг

Чтобы преобразовать даты в текстовом формате дд/мм /гг в истинную дату в формате мм/дд/гг, вы можете использовать формулу, основанную на функции ДАТА. В показанном примере формула в C5:

= ДАТА(ПРАВСИМВ(B5;2) + 2000; ПСТР(B5;4;2); ЛЕВСИМВ (B5;2))

Который преобразует текстовое значение в B5 «29/02/16» в правильную дату Excel.

Ядром этой формулы является функция ДАТА, которая используется для сборки правильного значения даты Excel. Функция ДАТА требует действительных значений года, месяца и дня, поэтому они анализируются из исходной текстовой строки следующим образом:

Значение года извлекается с помощью функции ПРАВСИМВ:

ПРАВСИМВ(B5;2) +2000

ПРАВСИМВ получает по крайней мере 2 символа от исходного значения. Число 2000 добавлено к результату, чтобы создать действительный год. Это число переходит в ДАТА в качестве аргумента год.

Значение месяца извлекается с помощью:

ПСТР(B5;4;2)

ПСТР извлекает символы 4-5. Результат переходит в ДАТА в качестве аргумента месяц.

Значение дня извлекается с помощью:

ЛЕВСИМВ(B5;2)

ЛЕВСИМВ захватывает последние 2 символа исходного текстового значения, которое переходит в ДАТА в качестве аргумента дня.

Три значения, извлеченные выше, входят в ДАТУ следующим образом:

= ДАТА (2016; «02»; «29»)

Хотя месяц и день предоставляются в виде текста, функция ДАТА автоматически преобразуется в числа и возвращает действительную дату.

Примечание: значение 2016 года автоматически было преобразовано в число при добавлении 2000.

Если исходное текстовое значение содержит дополнительные начальные или конечные символы пробела, вы можете добавить функцию СЖПРОБЕЛЫ для удаления:

= ДАТА(ПРАВСИМВ (СЖПРОБЕЛЫ (A1); 2) + 2000; ПСТР(СЖПРОБЕЛЫ (A1); 4;2); ЛЕВСИМВ(СЖПРОБЕЛЫ (A1); 2))

Преобразование текста в дату

=ДАТА (ЛЕВСИМВ(текст; 4); ПСРТ(текст; 5;2); ПРАВСИМВ(текст; 2))

Чтобы преобразовать текст в непринятом формате даты в правильную дату Excel, вы можете проанализировать текст и собрать правильную дату с формулой, основанной на нескольких функциях: ДАТА, ЛЕВСИМВ, ПСРТ и ПРАВСИМВ.

Преобразование текста в дату

В показанном примере формула в C6:

= ДАТА(ЛЕВСИМВ(B6;4); ПСРТ(B6;5;2); ПРАВСИМВ(B6;2))

Эта формула отдельно извлекает значения года, месяца и дня и использует функцию ДАТА, чтобы собрать их в дату 24 октября 2000 года.

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

текст (19610412) Дата представления (Апрель 12, 1961)

Excel не будет распознавать эти текстовые значения в качестве даты, поэтому для создания правильной даты вам нужно проанализировать текст в его компонентах (год, месяц, день) и использовать их для создания даты с помощью функции ДАТА.

Функция ДАТА принимает три аргумента: год, месяц и день. ЛЕВСИМВ извлекает самые левые 4 символа и поставляет это в ДАТА в качестве года. Функция ПСРТ извлекает символы 5-6 и поставляет это в ДАТА в качестве месяца, а функция ПРАВСИМВ извлекает самые правые 2 символа и поставляет их в ДАТА в качестве дня. Конечным результатом является правильная дата Excel, которая может быть отформатирована любым способом.

В строке 8 (непризнанный) формат даты дд.мм.гггг и формула в C8:

= ДАТА(ПРАВСИМВ(B8;4); ПСРТ(B8;4;2); ЛЕВСИМВ(B8;2))

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

Чтобы преобразовать даты, добавив нуль, попробуйте Специальную вставку:

  • Добавить ноль в неиспользуемую ячейку и скопировать в буфер обмена
  • Выберите проблемные даты
  • Специальная вставка> Значения> Добавить

Чтобы преобразовать даты путем добавления нуля в формулу, используйте:

= A1 + 0

Где A1 содержит непризнанную дату.

Другой способ заставить Excel распознавать даты — использовать текст в столбцах:

Выберите столбец дат, затем попробуйте Дата> Текст в столбах>Исправлено> Конец

Это иногда может исправить все сразу.

Если в вашей ячейке лежит дата в виде текстовой строки, например, «8 март 2013», то для Excel это, естественно, не дата, а текст. Чтобы преобразовать текстовую дату в полноценную (читай – в числовой код даты, т.к. внутри Excel любая дата представлена именно числовым кодом), можно использовать специальную функцию ДАТАЗНАЧ (DATEVALUE). Она умеет превращать в нормальную дату различные текстовые варианты ее написания:

Превращение текстовой даты в полноценную с ДАТАЗНАЧ

Как видно из скриншота, проблемы с преобразованием будут только у англоязычных дат (если у вас установлен русский Excel), с падежами месяцев (ибо их нет в английском языке в принципе) и с совсем уж невнятными цифровыми наборами типа «18 3 17». Со всем остальным эта функция замечательно справляется.

Если для ввода дат была использована не точка или косая черта, а запятая (что часто бывает при использовании дополнительной цифровой клавиатуры), то придется сначала заменить запятую на точку с помощью функции ПОДСТАВИТЬ (SUBSTITUTE) и потом уже использовать функцию ДАТАЗНАЧ для преобразования получившегося текста в реальную дату:

Дата с запятыми

Ссылки по теме

  • Как Excel на самом деле хранит и обрабатывает даты и время
  • Как найти ближайший рабочий день функцией РАБДЕНЬ (WORKDAY)
  • Как вычислить разницу между двумя датами в днях, месяцах или годах

Понравилась статья? Поделить с друзьями:
  • Функция преобр в excel
  • Функция предсказ линейн в excel
  • Функция предсказ для прогнозирования будущих значений в excel
  • Функция прописи цифр в excel
  • Функция предсказ в excel это