Зміст
У посібнику пояснюється, як за допомогою функцій Excel перетворити текст на дату і число на дату, а також як перетворити текстові рядки на дати неформульним способом. Ви також дізнаєтеся, як швидко змінити формат числа на дату.
Оскільки Excel - не єдина програма, з якою ви працюєте, іноді вам доведеться працювати з датами, імпортованими на аркуш Excel з файлу .csv або іншого зовнішнього джерела. Коли це трапляється, швидше за все, дати експортуються як текстові записи. Навіть якщо вони виглядають як дати, Excel не розпізнає їх як такі.
Існує багато способів перетворення тексту в дату в Excel, і цей посібник має на меті охопити їх усі, щоб ви могли вибрати техніку перетворення тексту в дату, яка найбільше підходить для вашого формату даних і ваших уподобань щодо формульного або неформульного способу.
Як відрізнити звичайні дати Excel від "текстових дат"
При імпорті даних в Excel часто виникає проблема з форматуванням дат. Імпортовані записи можуть виглядати як звичайні дати Excel, але вони не поводяться як дати. Microsoft Excel розглядає такі записи як текст, що означає, що ви не можете сортувати таблицю за датою належним чином, а також не можете використовувати ці "текстові дати" у формулах, зведених таблицях, діаграмах або будь-якому іншому інструменті Excel, який розпізнає дати.
Існує кілька ознак, які можуть допомогти вам визначити, чи є даний запис датою або текстовим значенням.
Дати | Текстові значення |
|
|
Як перетворити число в дату в Excel
Оскільки всі функції Excel, які змінюють текст на дату, повертають в результаті число, давайте спочатку докладніше розглянемо перетворення чисел в дати.
Як ви, напевно, знаєте, Excel зберігає дати і час як порядкові номери, і тільки форматування комірки змушує число відображатися як дата. Наприклад, 1-січня-1900 зберігається як число 1, 2-січня-1900 зберігається як 2, а 1-січня-2015 зберігається як 42005. Для отримання додаткової інформації про те, як Excel зберігає дати і час, див. розділ Формат дати в Excel.
При обчисленні дат в Excel результат, що повертається різними функціями дати, часто є порядковим номером, що представляє дату. Наприклад, якщо =TODAY()+7 повертає число типу 44286 замість дати, яка через 7 днів після сьогодні, це не означає, що формула невірна. Просто формат комірки встановлений в значення Генеральний або Текст тоді як це має бути Дата .
Щоб конвертувати такий серійний номер в сучасний, достатньо змінити формат номера комірки. Для цього просто виберіть Дата в Формат номера у вікні на сайті Головна сторінка рахунок.
Щоб застосувати формат, відмінний від стандартного, виділіть комірки з порядковими номерами та натисніть Ctrl+1, щоб відкрити вікно Формат комірок У діалоговому вікні Кількість вкладка, виберіть Дата виберіть потрібний формат дати в розділі Тип і натисніть OK.
Так, це так просто! Якщо вам потрібно щось більш складне, ніж стандартні формати дат Excel, будь ласка, подивіться, як створити власний формат дати в Excel.
Якщо якесь вперте число не хоче перетворюватися на дату, перевірте, чи не працює формат дати в Excel - поради щодо усунення неполадок.
Як перетворити 8-значне число в дату в Excel
Дуже поширена ситуація, коли дата вводиться у вигляді 8-значного числа, наприклад, 10032016, а вам потрібно перетворити його в значення дати, яке розпізнає Excel (10/03/2016). У цьому випадку просто змінити формат комірки на Дата не вийде - ви отримаєте ########## в якості результату.
Щоб перевести таке число в дату, доведеться використовувати функцію DATE в поєднанні з функціями RIGHT, LEFT і MID. На жаль, неможливо скласти універсальну формулу, яка буде працювати у всіх сценаріях, тому що вихідне число може бути введено в самих різних форматах. Наприклад:
Кількість | Формат | Дата |
10032016 | ddmmyyyyy | 10-березня-2016 |
20160310 | yyyymmdd | |
20161003 | ррррррррррррррррррррррррррррррр |
Так чи інакше, я спробую пояснити загальний підхід до переведення таких чисел у дати та навести кілька формульних прикладів.
Для початку запам'ятайте порядок розташування аргументів функції Дата в Excel:
ДАТА (рік, місяць, день)Отже, все, що вам потрібно зробити, це витягти рік, місяць і число з вихідного числа і передати їх як відповідні аргументи у функцію "Дата".
Наприклад, розглянемо, як можна перетворити число 10032016 (зберігається в комірці А1) на дату 3/10/2016.
- Витягніть рік Це останні 4 цифри, тому ми використовуємо функцію RIGHT, щоб вибрати останні 4 символи: RIGHT(A1, 4).
- Витягніть місяць Це 3-тя і 4-та цифри, тому ми використовуємо функцію MID, щоб отримати їх MID(A1, 3, 2). Де 3 (другий аргумент) - початкове число, а 2 (третій аргумент) - кількість символів, які потрібно витягти.
- Витягніть день Це перші 2 цифри, тому у нас є функція LEFT, яка повертає перші 2 символи: LEFT(A2,2).
Нарешті, вставте вищевказані інгредієнти в функцію Дата, і ви отримаєте формулу для перетворення числа в дату в Excel:
=DATE(RIGHT(A1,4), MID(A1,3,2), LEFT(A1,2))
Наступний скріншот демонструє цю та ще кілька формул у дії:
Зверніть увагу на останню формулу на скріншоті вище (рядок 6). Вихідне число-дата (161003) містить лише 2 символи, що позначають рік (16). Отже, щоб отримати 2016 рік, ми об'єднуємо 20 і 16 за допомогою наступної формули: 20&LEFT(A6,2). Якщо цього не зробити, функція Date за замовчуванням поверне 1916 рік, що трохи дивно, ніби Microsoft все ще живе у 20 столітті :)
Примітка: формули, продемонстровані в цьому прикладі, працюють коректно, якщо всі номери ви хочете конвертувати в дати, виконайте наступне той самий шаблон .
Як перетворити текст на дату в Excel
Коли ви помічаєте текстові дати у вашому файлі Excel, швидше за все, ви захочете перетворити ці текстові рядки в звичайні дати Excel, щоб ви могли посилатися на них у своїх формулах для виконання різних обчислень. І як це часто буває в Excel, є кілька способів вирішити цю задачу.
Функція Excel DATEVALUE - зміна тексту на дату
На сьогоднішній день, на жаль, це не так. ДАТА НАБОРУ в Excel перетворює дату в текстовому форматі в серійний номер, який Excel розпізнає як дату.
Синтаксис функції DATEVALUE в Excel дуже простий:
DATEVALUE(дата_текст) Отже, формула для перетворення текстового значення на сьогоднішній день виглядає так =DATEVALUE(A1)
де A1 - комірка з датою, що зберігається у вигляді текстового рядка.
Оскільки функція DATEVALUE в Excel перетворює текстову дату в серійний номер, вам доведеться зробити так, щоб цей номер виглядав як дата, застосувавши до нього формат Дата, як ми обговорювали хвилину тому.
На наведених нижче скріншотах продемонстровано кілька формул Excel DATEVALUE в дії:
Функція ДАТНЫЕЗНАЧЕНИЯ Excel - про що варто пам'ятати
При перетворенні текстового рядка в дату за допомогою функції DATEVALUE слід мати на увазі, що:
- Інформація про час у текстових рядках ігнорується, як ви можете бачити в рядках 6 і 8 вище. Для перетворення текстових значень, що містять як дату, так і час, використовуйте функцію VALUE.
- Якщо в текстовій даті пропущено рік, функція ДАТА в Excel вибере поточний рік з системного годинника вашого комп'ютера, як показано в рядку 4 вище.
- Оскільки Microsoft Excel зберігає дати з 1 січня 1900 року, то використання функції ДАННЫЕ Excel на більш ранніх датах призведе до помилки #ЗНАЧЕНИЕ!
- Функція ДАТАЗНАЧ не може перетворити числове значення в дату, а також не може обробити текстовий рядок, який виглядає як число, для цього потрібно використовувати функцію ЗНАЧЕНИЕ Excel, і саме про неї ми поговоримо далі.
Функція Excel VALUE - перетворення текстового рядка на дату
У порівнянні з функцією ДАТНОЕЗНАЧЕНИЕ, функція ЗНАЧЕНИЕ в Excel є більш універсальною. Вона може перетворити будь-який текстовий рядок, який виглядає як дата або число, в число, яке ви можете легко змінити на формат дати за вашим вибором.
Синтаксис функції VALUE наступний:
VALUE(текст) Де текст
текстовий рядок або посилання на комірку, що містить текст, який потрібно перетворити на число.
Функція ЗНАЧЕННЯ Excel може обробляти як дата і час остання переводиться в десяткову частину, як ви можете бачити в рядку 6 на наступному скріншоті:
Математичні операції для перетворення тексту в дати
Крім використання спеціальних функцій Excel, таких як ЗНАЧЕННЯ і ДАТНЕЗНАЧЕННЯ, ви можете виконати просту математичну операцію, щоб змусити Excel виконати перетворення тексту в дату для вас. Необхідною умовою є те, що операція повинна бути виконана не повинен змінити значення дати (Звучить трохи складно? Наступні приклади спростять завдання!
Припускаючи, що ваша текстова дата знаходиться в комірці A1, ви можете використовувати будь-яку з наведених нижче формул, а потім застосувати до комірки формат Дата:
- Доповнення:
=A1 + 0
- Множення:
=A1 * 1
- Підрозділ:
=A1 / 1
- Подвійне заперечення:
=--A1
Як видно на скріншоті вище, математичні операції можуть перетворювати дати (рядки 2 і 4), час (рядок 6), а також числа у текстовому форматі (рядок 8). Іноді результат навіть відображається у вигляді дати автоматично, і вам не потрібно турбуватися про зміну формату комірки.
Як перетворити текстові рядки з нестандартними роздільниками в дати
Якщо ваші текстові дати містять інші роздільники, крім прямої похилої риски (/) або тире (-), функції Excel не зможуть розпізнати їх як дати і повернуть помилку #ЗНАЧЕННЯ!
Щоб виправити це, ви можете запустити в Excel Знайти і замінити інструмент для заміни роздільника на косу риску (/), і все це за один раз:
- Виберіть всі текстові рядки, які ви хочете перетворити на дати.
- Натисніть Ctrl+H, щоб відкрити вікно Знайти і замінити діалогове вікно.
- Введіть свій власний роздільник (у цьому прикладі - крапку) у полі Знайти що і коса риска в полі Замінити на
- Натисніть на кнопку Замінити все
Тепер функція DATEVALUE або VALUE не повинна мати проблем з перетворенням текстових рядків в дати. Таким же чином можна виправити дати, що містять будь-який інший роздільник, наприклад, пробіл або зворотну скісну риску.
Якщо ви віддаєте перевагу формульному рішенню, ви можете використовувати функцію ПІДСТАНОВКА в Excel замість Замінити все переключити роздільники на косі риски.
Якщо припустити, що текстові рядки знаходяться в стовпці А, то формула ПІДСТАНОВКИ може виглядати наступним чином:
=SUBSTITUTE(A1, ".", "/")
Де A1 - текстова дата, а "." - роздільник, яким відокремлюються ваші рядки.
Тепер вбудуємо цю функцію ПІДСТАНОВКА у формулу ЗНАЧЕННЯ:
=VALUE(ПІДСТАНОВКА(A1, ".", "/"))
І перетворити текстові рядки в дати, і все це за допомогою однієї формули.
Як бачите, функції DATEVALUE і VALUE в Excel досить потужні, але обидві мають свої межі. Наприклад, якщо ви намагаєтеся перетворити складні текстові рядки типу Четвер, 01 січня 2015 року, На щастя, існує неформульне рішення, яке може впоратися з цим завданням, і в наступному розділі пояснюються детальні кроки.
Майстер "Текст у стовпці" - безформульний спосіб приховування тексту на сьогоднішній день
Якщо ви не є користувачем з неформульним типом даних, вам може допомогти давня функція Excel, яка називається Текст в колонки Він може впоратися як з простими текстовими датами, продемонстрованими в прикладі 1, так і з текстовими рядками, що складаються з декількох частин, як показано в прикладі 2.
Приклад 1. Перетворення простих текстових рядків у дати
Якщо текстові рядки, які ви хочете перетворити на дати, мають будь-який з наступних виглядів:
- 1.1.2015
- 1.2015
- 01 01 2015
- 2015/1/1
Вам не потрібні формули, не потрібно нічого експортувати чи імпортувати. Все, що потрібно - це 5 швидких кроків.
У цьому прикладі ми будемо перетворювати текстові рядки типу 01 01 2015 (день, місяць і рік відокремлені пробілами) в дати.
- На аркуші Excel виберіть стовпець текстових записів, які ви хочете перетворити на дати.
- Перейдіть на сторінку Дані рахунок, Інструменти даних групу і натисніть Текст до колонок.
У цьому прикладі ми конвертуємо текстові дати, відформатовані як "01 02 2015" (місяць день рік), тому вибираємо MDY з випадаючого списку.
Тепер Excel розпізнає текстові рядки як дати, автоматично перетворює їх у формат дати за замовчуванням і відображає в комірках з вирівнюванням по правому краю. Змінити формат дати можна звичайним способом за допомогою кнопки Формат комірок діалог.
Зауважимо, що для Текст у стовпчик для коректної роботи майстра, всі ваші текстові рядки повинні бути відформатовані однаково. Наприклад, якщо деякі з ваших записів відформатовані як день/місяць/рік в той час як інші - у форматі місяць/день/рік ви б отримали невірні результати.
Приклад 2. перетворення складних текстових рядків в дати
Якщо ваші дати представлені багатокомпонентними текстовими рядками, такими як
- Четвер, 01 січня 2015 року
- 01 січня 2015 року 15:00
Вам доведеться докласти трохи більше зусиль і використовувати як Текст до колонок майстра та функцію ДАТА в Excel.
- Виберіть всі текстові рядки, які потрібно перетворити на дати.
- Натисніть на кнопку Текст до колонок на кнопці Дані рахунок, Інструменти даних група.
- На першому етапі реалізації проекту Майстер перетворення тексту в стовпці виберіть Розмежовані і натисніть Далі .
- На другому кроці майстра виберіть роздільники, які містять ваші текстові рядки.
Наприклад, якщо ви конвертуєте рядки, розділені комами і пробілами, такі як " Четвер, 01 січня 2015 року" слід використовувати обидва роздільники - кому та пробіл.
Також має сенс вибрати пункт " Розглядати послідовні роздільники як один ", щоб ігнорувати зайві пробіли, якщо вони є у ваших даних.
Дивіться також: Діаграми Excel: додаємо заголовок, налаштовуємо вісь діаграми, легенду та підписи данихІ наостанок, подивіться на Попередній перегляд даних і перевірте правильність розбиття текстових рядків на колонки, після чого натисніть кнопку Далі .
- На кроці 3 майстра переконайтеся, що всі стовпці в розділі Попередній перегляд даних мають значення Генеральний Якщо вони не відповідають, клацніть на стовпчик і виберіть Генеральний в рамках Формат даних стовпця варіанти.
Примітка: не обирайте опцію Дата для будь-якого стовпчика, оскільки кожен стовпчик містить лише один компонент, тому Excel не зможе зрозуміти, що це дата.
Якщо Вам не потрібна якась колонка, натисніть на неї і виберіть Не імпортувати стовпець (пропустити).
Якщо ви не хочете перезаписувати вихідні дані, вкажіть, куди потрібно вставити стовпці - введіть адресу верхньої лівої комірки в полі Пункт призначення поле.
Після цього натисніть кнопку Фініш кнопку.
Як ви бачите на скріншоті вище, ми пропускаємо першу колонку з днями тижня, розбиваючи інші дані на 3 колонки (в Генеральний формату) та вставити ці стовпчики, починаючи з комірки С2.
На наступному скріншоті показано результат, з вихідними даними в колонці A та розділеними даними в колонках C, D та E.
- Нарешті, ви повинні об'єднати частини дати разом за допомогою формули ДАТА. Синтаксис функції ДАТА в Excel не потребує пояснень: ДАТА(рік, місяць, день)
У нашому випадку,
рік
знаходиться в колонці E тадень
є в колонці D, з ними немає проблем.Не все так просто з
місяць
оскільки це текст, тоді як функція ДАТА потребує числа. На щастя, Microsoft Excel надає спеціальну функцію МІСЯЦЬ, яка може змінити назву місяця на номер місяця:=MONTH(серійний_номер)
Для того, щоб функція МЕСЯЦ розуміла, що вона має справу з датою, ми запишемо її таким чином:
=MONTH(1&C2)
Де C2 містить назву місяця, січень У нашому випадку "1&" додається для об'єднання дати ( 1 січня) щоб функція MONTH могла перетворити його у відповідний номер місяця.
А тепер давайте вбудуємо функцію MONTH в
місяць
аргумент нашої формули DATE:=DATE(F2,MONTH(1&D2),E2)
І вуаля, наші складні текстові рядки успішно перетворені в дати:
Швидке перетворення текстових дат за допомогою Paste Special
Для швидкого перетворення діапазону простих текстових рядків в дати можна скористатися наступним прийомом.
- Скопіюйте будь-яку порожню комірку (виділіть її і натисніть Ctrl + C ).
- Виберіть діапазон з текстовими значеннями, які потрібно перетворити в дати.
- Клацніть правою кнопкою миші по виділенню, натисніть Паста спеціальна і виберіть Додати в Паста спеціальна діалогове вікно:
Ви щойно сказали Excel додати нуль (порожню комірку) до ваших текстових дат. Щоб зробити це, Excel перетворює текстовий рядок на число, а оскільки додавання нуля не змінює значення, ви отримуєте саме те, що хотіли - порядковий номер дати. Як завжди, ви змінюєте число на формат дати за допомогою кнопки Формат комірок діалог.
Щоб дізнатися більше про функцію "Спеціальна вставка", див. статтю Як використовувати спеціальну вставку в Excel.
Фіксація текстових дат з двозначними роками
Сучасні версії Microsoft Excel досить розумні, щоб помітити деякі очевидні помилки у ваших даних, або, краще сказати, те, що Excel вважає помилкою. Коли це відбувається, ви побачите індикатор помилки (маленький зелений трикутник) у верхньому лівому куті комірки, а коли ви виділите комірку, з'явиться знак оклику:
Натиснувши на знак оклику, ви побачите кілька варіантів, що стосуються ваших даних. Якщо рік є двозначним, Excel запитає, чи хочете ви перетворити його на 19ХХ або 20ХХ.
Якщо у Вас кілька записів такого типу, Ви можете виправити їх всі одним махом - виділіть всі комірки з помилками, потім натисніть на знак оклику і виберіть відповідну опцію.
Як включити перевірку помилок в Excel
Зазвичай в Excel за замовчуванням включена перевірка помилок, щоб переконатися в цьому, натисніть Файл > Опції > Формули прокрутіть вниз до пункту Перевірка помилок та перевірте, чи встановлені наступні опції:
- Увімкнути фонову перевірку помилок під Перевірка помилок ;
- Клітинки, що містять роки, представлені 2 цифрами під Правила перевірки помилок .
Як змінити текст на дату в Excel простим способом
Як бачите, конвертація тексту в Excel - це далеко не тривіальна операція в один клік. Якщо ви заплуталися в різних варіантах використання і формулах, дозвольте мені показати вам швидкий і простий спосіб.
Встановіть наш Ultimate Suite (безкоштовну пробну версію можна завантажити тут), перейдіть на сторінку Ablebits Tools (2 нові вкладки з 70+ чудовими інструментами будуть додані до вашого Excel!) і знайдіть вкладку Текст на сьогоднішній день кнопку:
Щоб перетворити текстові дати на звичайні, потрібно зробити наступне:
- Виділіть комірки з текстовими рядками і натисніть кнопку Текст на сьогоднішній день кнопку.
- Вкажіть порядок дат (дні, місяці та роки) у виділених комірках.
- Виберіть, включати чи не включати час у перерахованих датах.
- Натисніть Перетворити .
Все! Результати конвертації з'являться в сусідній колонці, ваші вихідні дані будуть збережені. Якщо щось піде не так, ви можете просто видалити результати і спробувати ще раз з іншим порядком дат.
Порада: Якщо ви вибрали конвертацію часу та дати, але в результатах відсутні одиниці часу, обов'язково застосуйте формат чисел, який відображає значення дати та часу. Для отримання додаткової інформації див. статтю Як створити власні формати дати та часу.
Якщо вам цікаво дізнатися більше про цей чудовий інструмент, будь ласка, відвідайте його домашню сторінку: Text to Date for Excel.
Ось так можна перетворити текст в дату в Excel і змінити дати на текст. Сподіваюся, ви змогли знайти техніку до душі. У наступній статті ми візьмемося за протилежну задачу і розглянемо різні способи перетворення дат Excel в текстові рядки. Дякую за прочитання і сподіваюся побачити вас наступного тижня.