VBA DateValue | Як використовувати функцію DateValue в Excel VBA?

Що таке функція VBA DateValue?

Функція DateValue - це вбудована функція в Excel VBA під категорією функції Дата / час. Він працює як функція VBA, так і як робочий аркуш у vba. Ця функція повертає серійний номер або значення Date, надані у форматі подання рядка, ігноруючи інформацію про час, надану рядком Date. Він використовується двома різними способами в Excel. Ця функція використовується як формула робочого аркуша, що надходить у комірку робочого аркуша. Він використовується як макрокод у програмі VBA, що вводить його через редактор Visual Basic, пов’язаний з Microsoft Excel.

У цій статті ми збираємося вивчити приклади VBA DATEVALUE та як використовувати його з чітким поясненням.

Пояснення функції VBA Datevalue

У VBA DATEVALUE використовує такий синтаксис.

Ця функція використовує лише один аргумент або параметр

  • Дата : Це дата, представлена ​​у форматі рядка
  • Повертає: Ця функція повертає значення дати, коли вона використовується як функція VBA. Він повертає значення дати, коли воно використовується як функція робочого аркуша

Функція VBA DateValue здатна інтерпретувати дані, представлені у текстовому форматі, згаданому у дійсному форматі Excel. Він не може повернути значення дати, якщо рядок включав текстове представлення дня тижня.

Перевагами функції VBA DateValue є вилучення значення дати з рядка та перетворення дати з часом на єдину дату. Ми можемо просто сказати, що коли дата дається з часом, ця функція лише значення дати, уникаючи значення часу.

Як використовувати Excel VBA DATEVALUE?

Для використання функції DateValue в Excel спочатку потрібно відкрити редактор VBA.

Командну кнопку потрібно розмістити на аркуші Excel, щоб додати до неї рядки програми VBA. Для реалізації рядків програми користувачеві потрібно натиснути на командну кнопку в аркуші Excel. Щоб мати дійсний результат програми, дійсне введення подається через аргумент. Наприклад, наступний код допомагає створити макрос для запуску функції DateValue для вилучення значення дати з тексту у VBA.

Програма VBA: 

 Кнопка додаткової дати () Змінити дату як дату myDate = DateValue (“15 серпня 1991 р.”) Дата MsgBox (моя дата) Кінець 

Цей код дає результат як 15 із заданого вводу.

Приклади Excel VBA DATEVALUE

Нижче наведено приклади DateValue в Excel VBA.

Завантажити цей шаблон VBA DateValue Excel можна тут - Шаблон Excel VBA DateValue

Приклад №1 - Отримати день, місяць та рік із дати

Для створення та запуску програми у VBA виконується декілька кроків. До них належать

Крок 1: Перейдіть на вкладку розробника, наведіть курсор на клітинку на аркуші Excel та натисніть опцію «Вставити» та виберіть «Кнопка команди» під елементом керування ActiveX, як показано на малюнку.

Перетягніть кнопку туди, куди ви хочете, і дайте підпис як кнопку дати з вікна властивостей.

Крок 2: Двічі клацніть на кнопці, яка перенаправить на проект VBA, і напишіть код між командною кнопкою Private Sub і кінцевою підпрограмою.

Код повинен бути розроблений, як показано нижче, щоб отримати дату, місяць та рік.

Код:

 Приватна допоміжна датаbutton1_Click () Затемнити приклад дати як дату Exampledate = DateValue ("April 19,2019") MsgBox Date MsgBox Year (Exampledate) MsgBox Month (Exampledate) End Sub 

У цьому коді Datebutton1_Click () - це ім'я, а дата прикладу є змінною з типом даних Date та Msgbox для відображення результату.

Крок 3: Під час розробки коду виникатимуть помилки невідповідності типу vba, і вони повинні подбати про них.

Крок 4: На цьому кроці запустіть програму, натиснувши опцію запуску.

Або ми можемо перевіряти або налагоджувати програму поетапно, вибираючи опцію Крок в меню у меню Налагодження. Якщо наш код без помилок, він відображає результат.

Крок 5 : Коли програма запущена, вона спочатку відображає вікно повідомлення з датою, вказаною в текстовому режимі. Далі натисніть ОК, щоб знову побачити значення року, натисніть ОК у вікні повідомлення, щоб побачити значення місяця.

Примітка: Ці кроки слід чітко виконувати, щоб отримати точні результати.

Приклад №2 - Використання DatePart для отримання різних частин дати

Крок 1: Перейдіть на вкладку розробника Excel, наведіть курсор на клітинку на аркуші Excel і натисніть опцію «Вставити» та виберіть «Кнопка команди» в розділі «Управління ActiveX», як показано на малюнку.

Крок 2: Перетягніть кнопку та надайте підпис як DatePart під властивостями.

Двічі клацніть на цій кнопці, вона спрямовує на аркуш редактора Visual Basic і відображається наступним чином.

Крок 3: Розробіть код за допомогою DatePart з DateValue, як показано на малюнку.

Код:

 Приватна підгрупа Datepart1_Click () Применшити partdate як варіант partdate = DateValue ("15.08.1991") MsgBox partdate MsgBox Datepart ("yyyy", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate) MsgBox Datepart ("q", partdate) End Sub 

У цій програмі DatePart1 є ім'ям макроса, а partDate - ім'ям аргументу з типом даних 'variant'. Для відображення року, дати, місяця та чверті застосовується формат "рррр", "д", "м" та "q". Якщо ми допустимо помилку у форматі, вона відображає таку помилку.

Крок 4: Після успішної налагодження програми запустіть програму, натиснувши на кнопку запуску, використовуючи клавішу швидкого доступу Excel 5.

Код спочатку відображає повну дату, потім після натискання кожного OK у вікні msgbox відображає значення року після цього значення дати, значення місяця, значення кварталу відповідно.

Що слід пам’ятати про VBA DATEVALUE

Під час використання функції DateValue в Excel VBA слід пам’ятати наступні речі

  • Помилка часу виконання 13 із повідомленням Невідповідність відображається, коли дата, надана функції DateValue, не може перетворити на дійсну дату. Нам потрібна дата правильного текстового формату
  • Коли ми намагаємося отримати єдину дату з рядкового аргументу з кодом 'msgbox date (ім'я аргументу)', вона відображає помилку невідповідності типу.
  • Ми можемо бачити результати функції DateValue, не відкриваючи редактор VBA. Це робиться натисканням командної кнопки та вибором макросу, створеного для відповідної програми
  • Коли DatePart використовується для отримання значень, слід дотримуватися відповідного формату. В іншому випадку це призводить до "помилки часу виконання 5" із викликом або аргументом повідомлення про недійсну процедуру.