Как перевести дату в число
Преобразование даты в числовой формат
Задача
Условие и цель задачи. Пользователь вводит дату в формате ‘dd.mm.yyyy’, которая присваивается строчной переменной s. Необходимо преобразовать строку в запись d, имеющую три числовых поля – day, month, year.
Решение
Алгоритм решения задачи:
Алгоритмы преобразования строчного представления даты в численное могут использоваться в программах, которые выполняют какие-либо вычисления, связанные с датами.
Мы не будем писать сразу наиболее эффективную и короткую программу. Сначала алгоритм решения будет достаточно прозрачным и простым.
Программа на языке Паскаль:
Алгоритм 1. Линейная программа
Введенная пользователем дата находится в строчной переменной s.
Извлечение любого символа из строки производится так же, как получение элемента массива по его индексу. Например, s[1] приведет к извлечению первого символа сроки. Можно даже извлечь срез: s[1..2] извлечет первые два символа. Однако как их преобразовать в число?
Функция ord возвращает порядковый номер переданного ей аргумента. Если ей передать символ, то она вернет его номер в таблице символов. Это будет величина целого типа. Например, символ ‘0’ (ноль) может быть 48-м. Поэтому ord(‘0’) вернет 48. Далее номера цифр идут по порядку друг за другом: ‘1’ – 49, ‘2’ – 50, ‘3’ – 51 и т.д.
Чтобы перевести символьное представление цифры (например, ‘7’) в число (7), достаточно выполнить такое выражение: ord(‘7’) – ord(‘0’). Разница номеров между данными символами как раз составляет семь единиц. Таким образом, мы можем перевести символьное представление цифры в число.
Следующая проблема заключается в том, что числа в дате двузначные (день и месяц) и четырехзначные (год). Мы же получили значение только отдельных цифр. Однако, имея цифры и зная их позицию в числе, нетрудно вычислить само число. Например, если первое число 2 (десятки), а второе 4 (единицы), то получить 24 легко: 2 * 10 + 4. Год wxyz вычисляется по формуле w * 1000 + x * 100 + y * 10 + z.
Кроме того, следует не забыть пропустить точки в строке даты. Это символы под номерами 3 и 6. Они никакого участия в вычислениях принимать не должны.
Алгоритм 2. Использование цикла и массива
Как можно заметить, слишком много раз в предыдущей программе выполняется выражениеord(s[цифра])-ord(‘0’). Подобные действия лучше выполнять в цикле, а результат помещать не в переменные, а массив.
Требуется преобразовать в цикле все символы строки, за исключением 3-го и 6-го (тех, которые являются точкой), и заполнить массив.
Алгоритм 2. Быстрое решение
На самом деле не обязательно использовать массив, цикл и даже лишние переменные. Все делается гораздо проще, однако выражения получаются достаточно длинными и могут быть непонятны для начинающих.
Excel преобразование даты в число
Преобразовать число в дату Excel.
Отмена автоматической замены чисел датами
буквально, выделяете ячейки,Это можно исправить,: насколько я понял бы увидеть «живой»: В программе есть 01.07.2017», что бы скопировать ячейку. нового столбца введите весь столбец, можно датами выполним преобразованиеЕсли вам нужно ввести они отличаются, как
дату в число. числа. числовой (ничего не клавиши щелкаете по ним просто нажав F2 в такой ситуации файлjavvva спец. функция, все
дату не прописыватьВыделите ячейки с числами,
=ЗНАЧЕН() выбрать одну или в привычный для всего несколько чисел, настроить нужный формат,Например, в ячейкеЕсли подобные преобразования вам
произойдет)F2 правой кнопкой мыши, и Enter в нужно использовать неПодключил офис, нашел, ))) проблема в
данные переносятся в руками эта дата которые сохранены каки укажите в несколько ячеек. Ячейки
EXCEL формат даты. можно отменить их т.д., читайте в Excel дата написана приходится делать часто,щелкните по ячейкам с(вход в режим выбираете каждой строке, но точку а запятую свои ошибки том, что эксель
эксель, НО уже есть на
текст. скобках ссылку на должны находиться вПредположим, в преобразование в даты статье «Преобразовать дату одним числом 20160112. то имеет смысл псевдочислами правой кнопкой редактирования, в ячейке
Формат ячеек (Format Cells) строк этих не т.к excel вДобавлено через 18 минут 2003 и разделительесть такие значения,
листе, осталось еёНа вкладке ячейку, содержащую числа, одном и томA1 в Excel Online в текст Excel» Нам нужно разделить
Преобразование в MS EXCEL ТЕКСТовых значений в ДАТУ
автоматизировать этот процесс мыши и выберите начинает мигаеть курсор), меняете формат на один десяток тысяч формулах при вычислениях=—(ДЕНЬ(A1)&»,»&МЕСЯЦ(A1)) я уже менял.. например, 3,2 или только использовать поГлавная
которые хранятся в же столбце, иначевведена дата в одним из таких здесь. точками число на
при помощи несложного
команду
и затем
Числовой (Number)
распознает или воспринимает
javvva ничего не помогает)) 4,10 ссылке, то тогдащелкните виде текста. В этот процесс не виде 20081223. Выполним способов:Как работать с год, месяц и макроса. Нажмите сочетаниеСпециальная вставка (Paste Special)
Enter, жметеPelena только запятую:javvvaони вставляются в возвращает только числаВставить данном примере это будет работать. (Если преобразование в формат
добавить перед числом апостроф
датами в Excel, день. клавиш Alt+F11 илиили используйте сочетание
Преобразование чисел из текстового формата в числовой
. Также вместоОК: Здравствуйте.eddi3610nega
1. Выделите столбец
такие ячейки есть даты EXCEL. (‘). Например: ’11-53 менять формат, считать,Как преобразовать число в откройте вкладку клавишF2- и ничегоЧисло сохранено как: Суть в том, опять не внимателен. не могу помочь. и 04.ноя:
2. Нажмите эту кнопку
Специальная вставкаE23 в нескольких столбцах,С использованием функции ДATA() или ‘1/47. Апостроф прибавлять дни к дату Excel.Разработчик (Developer)Ctrl+Alt+Vможно просто делать не происходит! Совсем!
3. Нажмите кнопку «Готово»
4. Задайте формат
=ДАТА(ЛЕВСИМВ(A1;4);ПСТР(A1;5;2);ПРАВСИМВ(A1;2))
У нас такаяи нажмите кнопкув открывшемся окне выберите двойной щелчок левойВозможно, «это не баг, не считается сумма? это делает? Если чтоб вставлялось число, лет не пользуюсь. экспорта выставлять формат, посмотрите тут Сцепить
Другие способы преобразования
Использование формулы
ЩелкнитеТеперь нужно заполнить формулу способы преобразования» ниже.)
1. Вставьте новый столбец
С использованием пользовательского формата нажатия клавиши ВВОД; смотрите в статье таблица с датами,Visual Basic вариант кнопкой мыши по а фича», конечно,
2. Примените функцию ЗНАЧЕН
Если для каких-либо ячеек после разделителя две а не дата. и Вам советую в ячейках на дату и текстумножить вниз. Вот какКнопка «столбцы» обычно применяется=ТЕКСТ(A1;»0000″»/»»00″»/»»00″)+0добавить перед дробным числом «Работа с датами
3. Наведите указатель мыши
написанными одним числом.. В появившемся окнеЗначения (Values) ячейке. но нам от на листе был цифры, то он почитай пятое сообщение.
4. Щелкните и перетащите вниз
менять офис. новое числовой, но тогдаА лучше примери нажмите кнопку это сделать: Наведите для разделения столбцов,Или так ноль и пробел, в Excel» иНам нужно сделать так, редактора добавьте новыйиСамо-собой, что если ячеек этого не легче. установлен текстовый формат не переводит в там уже описано гораздо лучше старого. там меняются значения в файле приведите.ЧтоОК указатель на правый но ее также=—ТЕКСТ(A1;»0000\/00\/00″)
Использование специальной вставки и умножения
например, чтобы числа в конце этой чтобы все даты модуль через менюУмножить (Multiply) много, то такой Так что давайте-к
(это мог сделать дату. Как запретить как избавится от0nega каждый раз одни есть и что. Excel умножит каждую
нижний угол ячейки, можно использовать для
Обратный слеш (\) нужен 1/2 или 3/4 же статьи, смотрите
этого при ручном: Доброго времени суток и теже 30227, надо ячейку на 1, чтобы он принял преобразования столбца текста для корректного отображения
не заменялись датами
Отключение зеленых треугольников
См. также:
в числа. На
слеша (/). Функция 2 янв или разделе «Другие статьи
26.01.2016.
Числа преобразовать в дату
Нажмите клавиши CTRL+1 (илиЩелкните и перетащите вниз,Данные значение, а применение не остается в
В Excel можно пишем такую формулу. = «General» Selection.Value содержимого ячеек на
сделать рядом сЕсли на ячейке с эти ячейки числаhttps://support.office.com/ru-ru/art. rs=ru-RU&ad=RU0negaнайти «.» (без так, чтобы этого
дата высчитываться (брать+1 на Mac). чтобы добавить формулу
нажмите кнопку математических операций +0 ячейке после нажатия несколькими способами посчитать=ДАТА(ЛЕВСИМВ(A1;4);ПСТР(A1;5;2);ПРАВСИМВ(A1;2))
Excel начинает считатьДва вывода: 1.: от предложенного варианта кавычек) преобразования не было? ровно месяц назад
Выберите нужный формат. в другие ячейки.
Текст по столбцам или два минуса клавиши ВВОД, а стаж, возраст. ПроКопируем формулу по
Sub не формулами, а с элементарной формулой:
Убрать преобразование числа с точкой в дату
формате вы видите текстом. Иногда такие автоматическое преобразование отключить автор сразу жеЗаменит на «,»аналитика от текущей датыМожно сделать так, чтобы После этого вы.
(—), заставляют EXCEL тип ячейки становится эти способы читайте
столбцу. Получилось так.Теперь после выделения диапазона напрямую из буфера.
Двойной минус, в данном зеленый уголок-индикатор, то ячейки помечаются зеленым невозможно. 2. нужно отказался (без кавычек): если есть возможность (ячейка (B1)) числа, хранящиеся как
можете использовать новыйОстальные шаги мастера нужны попытаться перевести текст
дробным. статью «Как быстроПреобразовать дату в число всегда можно открытьЕсли псеводчисла, которые надо
случае, означает, на считайте, что вам индикатором, который вы,
заменять все преобразованные
Если авторуjavvva в мастере переносаAleksSid текст, не помечались
столбец или скопировать для разделения текста в подходящий числовойПримечания: посчитать стаж в Excel.
вкладку преобразовать, вдобавок еще самом деле, умножение повезло. Можно просто
скорее всего, видели: значения руками, проставляяИ НУЖНО: (импорта) задать десятичный: Вариант. Код =»Информация зелеными треугольниками. Выберите и вставить новые на столбцы. Так формат или дату,
, тогда зачем весь0nega разделитель, на завершение «&ТЕКСТ(ДАТА(ГОД(B1);МЕСЯЦ(B1)-1;ДЕНЬ(B1));»ДД.ММ.ГГГ»)Файл значения в исходный как нам нужно не изменяя результата.(см.
вводить, Excel Online соседней ячейке пишем, выбрать наш макрос и дробной части минус даст плюс
нажать на всплывающий гораздо хуже).:Возьму на себя даст. просто поменяете
импортом задать текстовый: Код =»Информация наПараметры это сделать: Выделите нажмите кнопку
Так как форматов представления вы планируете применять автоматически преобразует 2.12
такую формулу. в списке, нажать
или тысяч, то
и значение в
желтый значок сВ общем и целом,
Пардон, был невнимателен. смелость немного откорректировать знак и все.
формат ячеек. завершение «&ТЕКСТ(ДАТА(ГОД(B1);МЕСЯЦ(B1)-1;ДЕНЬ(B1));»ДД.ММ.ГГГ»)
>
ячейки с новой
Готово даты существует бесчисленное функции поиска для в 2 дек.=—(ТЕКСТ(A1;»ГГГГММДД»)) кнопку можно использовать другой ячейке это не восклицательным знаком, а появление в вашихsnipe первое сообщение тут проблема вили еще что-то.
AleksSidФормулы формулой. Нажмите клавиши, и Excel преобразует
множество (01012011, 2011,01,01 этих данных, мы Но это можетКопируем формулу по
Выполнить (Run подход. Выделите исходный изменит, но сам затем выбрать команду
данных чисел-как-текст обычно: прогнать макросом иDrongo другом. внимательней почитайтеDrongo, Синхронно и одинаково.и снимите флажок CTRL+C. Щелкните первую ячейки.
и пр.), то рекомендуем использовать апостроф. сильно раздражать, если столбцу. Получилось так.) диапазон с данными факт выполнения математической
Преобразовать в число (Convert
приводит к большому не мучатьсяУ него в первый пост:AleksSidЧисла в текстовом формате ячейку в исходном
Нажмите клавиши CTRL+1 (или для каждого случая Такие функции, как вы хотите ввестиЕсли нужно убрать из- и моментально и нажмите кнопку операции переключает формат to number)
количеству весьма печальныхпримерчик бы сторонней программе десятичные0negaаналитика: Можно еще так.. столбце. На вкладке+1 на Mac). придется создавать отдельную
ПОИСКПОЗ и ВПР, числа, которое не
таблицы столбец А
преобразовать псевдочисла вТекст по столбцам (Text данных на нужный: последствий:Genbor
числа имеют разделитель: В первом посте
, все это я
Код =»Информация наЗамена формулы ее результатомГлавная
Выберите нужный формат.
формулу. Конечно, перед не учитывают апострофы нужно превращать в с датами, то полноценные. to columns)
нам числовой.Все числа в выделенномперестает нормально работать сортировка: Попробуй рассмотреть выгрузку
точку: у автора уже
Преобразование дат в числа (Формулы/Formulas)
непечатаемых знаков из с кнопкой
Если вы по-прежнему видите может ли значениеЕсли число в ячейке
Преобразование чисел-как-текст в нормальные числа
невозможно отключить его, столбец. макрос в личнуюДанные (Data) 1 можно использовать в полноценные. вниз, а не эксель, а, скажем, таблицу Экса, эта ошибки нет, а тип: текстаВставить
формулы, которые не быть преобразовано в выровнено по левому
есть несколько способов,Или, скопировать столбец книгу макросов, чтобы. На самом деле любую другую безобиднуюЕсли зеленых уголков нет
Способ 1. Зеленый уголок-индикатор
Значения. Откройте вкладкуО пользовательском форматировании
число. похожи на даты столбцs с датами же история. Некоторые но, в данном будет тот же. настройках вашего Excelне находят требуемые рекомендовали. Копировать-вставить в мат.действия, то тогда не датаjavvva
Способ 2. Повторный ввод
bort-747 можно формулой преобразовать.Формулы для дат читайтеПри введении в ячейку (например, чисел с и формулами удалить. даты тоже могут случае, мы используемЭтот способ использовали еще ( значения, потому как ячейки текстового формата.И НУЖНОТем не менее: а в самой: Всем огромное спасибо значение из числаЕсли указанные выше действияи отключите параметр в статье Пользовательский числа с буквой
дробями), вы можете Подробнее о способах распознаваться Excel’ем как его с другой
Способ 3. Формула
я нашел и программе нельзя вместоAleksSid в дату не дали результатов,Показать формулы формат. «е», например 1e9, отформатировать ячейки как копирования, смотрите в текст, поэтому не целью. Excel, когда современные
Способ 4. Специальная вставка
к примеру у попробуйте использовать этот.Числа, хранящиеся как текст, оно автоматически преобразуется текст. После этого статье «Копирование в будет работать группировкаПропустите первых два шага эффективные менеджеры под
: кажется я нашел дается на начало 42917 необходимо из если вы хотите можно возвращать числовое непредвиденным результатам. Выделите 1,00E+09. Чтобы избежать будет пытаться преобразовать
Способ 5. Текст по столбцам
многие другие функции Excel дат, которые поKyogre нет Экса. проверить проблему. в параметрахAlexMэту проблему нельзя текста.Вставьте столбец рядом с кнопку
числом апостроф: ‘1e9Выберите ячейки, в которые даты, то, возможно, для чисел, только воспользуйтесь кнопкой
Способ 6. Макрос
(он появился толькоЕсли ячеек немного, то также перестают нормально каким-то причинам сохранены: в 2003 Excel’е не могу программы снимите галочку: а можно вместо решить путем использованияВыделите пустую ячейку, в ячейками, содержащими текст., чтобы выбратьБывает, что при экспорте необходимо ввести числа. в ячейках стоит формат вместо числовогоДополнительно (Advanced)
с 2003 года). можно поменять их работать: не в формате
проблему решаю так:Как вариант можно «использовать системные разделители» +1 написать +ДЕНЬ(B1) формата ячейки даты, которой нет этой В этом примере вариант преобразования. Если значений в EXCEL,Щелкните не тот формат. нужно заменить на. Откроется диалоговое окно,
так и поставьте точкуDrongo потому что в проблемы, введите в столбец E содержит эта кнопка недоступна, даты записываются вГлавнаяНапоминаем, что в дату-время. где можно задатьв любую пустую ячейку
Как вывести месяц из даты
На примерах мы покажем, как получить месяц из даты в таблицах Excel, преобразовать число в его название и наоборот, а также многое другое.
Думаю, вы уже знаете, что дата в Excel хранится в виде порядковых чисел. Поэтому в явном виде в ней нельзя увидеть ни день, ни месяц, ни год. Тем не менее, очень часто работать с ними по отдельности крайне необходимо. Сейчас мы рассмотрим, как выделить месяц из даты в виде числа или текста.
В этом руководстве вы узнаете:
Функция МЕСЯЦ в Excel – синтаксис и использование
Microsoft Excel предоставляет специальную функцию МЕСЯЦ() для извлечения месяца из даты. Она возвращает его порядковый номер в диапазоне от 1 (январь) до 12 (декабрь).
Функцию МЕСЯЦ() можно использовать во всех версиях Excel, и ее синтаксис настолько прост, насколько это возможно:
МЕСЯЦ(дата)
Для корректной работы этой функции аргумент следует вводить с помощью функции ДАТА(год; месяц; день). Либо ссылаться на ячейку, в которой она корректно записана.
Например, формула =МЕСЯЦ(ДАТА(2021;2;5)) возвращает 2, поскольку ДАТА представляет 5 февраля 2021 года.
Формула =МЕСЯЦ(«1-Мар-2020») также работает нормально. Дело в том, что если вы введете такой текст в ячейку, то Excel сразу же распознает его как дату. То же самое происходит и в формуле.
На практике гораздо удобнее ссылаться на ячейку с датой или возвращать ее какой-либо другой функцией, чем прописывать прямо в формуле. Например:
На первый взгляд функция МЕСЯЦ() в Excel может показаться простой. Но просмотрите приведенные ниже примеры, и вы удивитесь, узнав, сколько полезных вещей она может делать.
Как определить номер месяца по дате в Excel
Есть несколько способов перевести дату в месяц. Какой из них выбрать, зависит от того, какого именно результата вы пытаетесь достичь.
Это наиболее очевидный и простой способ. Например:
2. Функция ТЕКСТ() – вывести месяц в виде текстовой строки.
Будьте очень внимательны при использовании текстовых функций, потому что они всегда возвращают порядковые номера месяцев в виде текстовых значений. И если вы планируете выполнить какие-то дальнейшие вычисления или использовать полученные числа в других формулах, вам лучше придерживаться функции МЕСЯЦ().
Или же при помощи несложного математического действия преобразуйте текст в число:
На следующем скриншоте показаны результаты всех приведенных выше формул. Обратите внимание на выравнивание по правому краю чисел, возвращаемых функцией МЕСЯЦ() (ячейки C2 и C3), в отличие от выравнивания по левому краю текстовых значений, возвращаемых функциями ТЕКСТ (ячейки C5 и C6).
Как получить название месяца из даты
Если вы хотите видеть название месяца, а не число, вы снова используете функцию ТЕКСТ, но с другим шаблоном формата:
Если вы на просто хотите вывести название месяца вместо полной даты, тогда вам не нужны никакие формулы.
Автоматическое заполнение.
После того как вы отформатировали столбец значений даты в длинном формате, показанном выше, вы сможете вывести месяц в виде текстового значения, используя автоматическое заполнение.
Начните вводить несколько названий месяца в столбце рядом с отформатированными датами.
Excel угадает закономерность и выведет предлагаемое заполнение в светло-сером цвете. Вы можете нажать Enter, чтобы принять эти значения.
Таким образом, названия месяцев будут существовать как текстовые значения, а не только отформатированные даты.
Как преобразовать номер месяца в его название.
Использование форматирования
Предположим, у вас есть список чисел (от 1 до 12) на листе Excel, который вы хотите конвертировать в названия месяцев. Для этого можно использовать любую из следующих формул:
Во всех приведенных выше формулах A2 – это ячейка с номером. И единственная реальная разница между формулами – это код формата:
3. Чтобы вернуть только первую букву:
Как работают эти формулы?
Excel считает число 1 днем 1 января 1900 года. Умножая 1, 2, 3 и т. д. на 28, вы получаете дни 28, 56, 84, и т. д. 1900 года, то есть какое-то число в январе, феврале, марте и т. д. Код формата «МММ» или «ММММ» выводит название месяца. А год для нас здесь совсем не важен.
Вторая же формула просто создает дату первого числа соответствующего месяца 2020 года.
Более гибкий способ – функции ВЫБОР, ИНДЕКС или ПЕРЕКЛЮЧ.
Для максимальной гибкости вы можете создавать свои собственные наименования с помощью функции ВЫБОР следующим образом:
Введите названия месяцев, которые вы хотите вернуть (настроенные по желанию) как значения в функции ВЫБОР, после первого аргумента, который вводится как МЕСЯЦ([дата]). Функция МЕСЯЦ() извлечет номер (число от 1 до 12), и ВЫБОР будет использовать его для возврата n-го значения в списке.
Использование ВЫБОР – это более громоздкая формула. Но это более гибкое решение, поскольку позволяет вывести как результат любые значения, которые вы пожелаете (т.е. вы можете использовать значения, которые являются настраиваемыми, сокращенными, не сокращенными, в другом падеже, на другом языке).
Еще один интересный вариант – использование функции ИНДЕКС. Вновь у нас в качестве аргумента используется массив названий, которых мы можем настраивать так, как будет необходимо.
А второй аргумент – это порядковый номер месяца. Его можно указать явным образом либо получить функцией МЕСЯЦ(). Из массива будет извлечено значение, порядковый номер которого мы указали.
И, наконец, третий вариант – функция ПЕРЕКЛЮЧ. Вновь извлекаем порядковый номер как числовое значение от 1 до 12.
А затем пишем вот такую формулу:
Как видите, здесь тоже каждому числу соответствует определённое значение. Его мы и выводим в столбце B.
Как преобразовать название месяца в число
Теперь рассмотрим противоположную по логике задачу. Существуют две функции Excel, которые могут помочь вам преобразовать названия месяцев в числа – ДАТАЗНАЧ() и МЕСЯЦ(). Функция Excel ДАТАЗНАЧ() преобразует дату, сохраненную в виде текста, в порядковый номер, который Microsoft Excel распознает как дату. Затем функция МЕСЯЦ() извлекает из неё номер месяца.
Полная формула выглядит следующим образом:
Где A2 – это ячейка, содержащая название месяца, которое вы хотите превратить в число.
добавляется к значению ячейки, чтобы дать понять Экселю, что это дата. Иначе говоря, если вы в ячейку руками введёте, к примеру,
то программа определит вашу информацию как 1 февраля текущего года, дополнит недостающее содержимое в ячейке и применит формат даты для её отображения.
То же самое происходит и в формуле ДАТАЗНАЧ, когда мы к единице дописываем имя месяца с дефисом. Единственное важное условие здесь – нужно использовать именительный падеж, как это принято по умолчанию в Windows.
Однако, достаточно даже первых трёх букв месяца, чтобы не заморачиваться с падежами 😊.
Использование Power Query.
Надстройка Excel Power Query может помочь вам перевести дату в месяц и извлекать его номер или название.
Итак, у нас есть список дат и нужно вытащить из них месяц.
Ваша таблица будет загружена в Power Query.
Здесь у вас есть два варианта действий: либо добавить новый столбец, в который будет записан нужный результат, либо сразу преобразовать ваши даты. Пропустите следующие два шага, если вы просто хотите преобразовать дату в месяц без добавления нового столбца.
Плюсы —
Ваши исходные данные ни при каком раскладе не пострадают.
Минусы —
У вас должен быть установлен Power Query в вашей версии Excel. Название месяца будет полным, в именительном падеже.
Вот основные способы, как можно в Excel вывести месяц из даты. Надеюсь, эти советы были вам полезны.


















