Дата форматування VBA

Цей підручник покаже, як форматувати дати за допомогою VBA.

Форматувати дати у VBA

Існує два методи форматування дат за допомогою VBA.

  1. Властивість NumberFormat клітинок / діапазонів - Для форматування дат, збережених у клітинках
  2. Функція форматування VBA - Для форматування дат у VBA (наприклад, змінні)

Формат числа - дати

Формат числа за умовчанням для клітинки в Excel - Загальний. Ви можете відображати значення у вигляді чисел, тексту, дат, відсотків або валют, змінивши формат числа. Властивість NumberFormat можна використовувати у VBA для встановлення формату числа дат у клітинці або діапазоні.

Примітка: Щоб побачити різні стандартні формати дати, доступні в Excel, перейдіть до Домашня сторінка> Номер, і ви побачите такі параметри, як Коротка дата, Довга дата та час.


Коротке побачення

Параметр форматування номера короткої дати відображає дату у короткому, числовому форматі.

Наступний код встановить властивість .NumberFormat клітинки A1 на Коротку дату:

1 Діапазон ("A1"). NumberFormat = "мм/дд/рррр"

Довге побачення

Форматування чисел довгих дат відображає дату у довшому письмовому форматі. Наступний код встановить для властивості .NumberFormat клітинки A1 значення Long date:

1 Діапазон ("A1"). NumberFormat = "дддд, мммм дд, рррр"

Спеціальні дати

Щоб побачити коди формату користувацького числа, які можна використовувати у VBA для форматування дат, перейдіть до Домашня сторінка> Номер і натисніть кнопку запуску діалогового вікна. Виберіть вкладку «Номер» і виберіть «Користувацький».

Ви можете вибрати спеціальні вбудовані формати для вашої дати або створити власні формати дати, визначені користувачем. Наступний код встановить властивість .NumberFormat клітинки A1 до вбудованого користувацького формату дати:

1 Діапазон ("A1"). NumberFormat = "ммм-рр"

Результат такий:

У наведеному нижче коді буде встановлено властивість .NumberFormat клітинки A1 до визначеного користувачем спеціального формату дати:

1 Діапазон ("A1"). NumberFormat = "dddd-dd-mmm-yy"

Результат такий:

Переглянувши готові приклади Excel, ви можете дізнатися, як слід вводити числові формати. Для отримання додаткової інформації прочитайте документацію Microsoft щодо форматів номерів для дат.

Функція форматування VBA

Як згадувалося вище, метод NumberFormat підходить для встановлення формату числа дат, що зберігаються в осередках Excel. У VBA ви можете використовувати функцію форматування для перетворення дат у рядки з певним форматуванням дати.

Для форматування дат слід використовувати такий синтаксис:

Формат (String_Representation, NumberFormatCode) де:

String_Representation - текстовий рядок, що представляє дату.

NumberFormatCode - код формату числа, що визначає спосіб відображення дати.

Наступний код показує, як відформатувати подання текстового рядка дати як довгий формат дати:

1 Формат MsgBox ("01.01.2010", "dddd, мммм дд, рррр")

Результат такий:

Зверніть увагу, що функція форматування використовує той самий синтаксис форматування дати, що і NumberFormat вище.

Наступний код показує, як відформатувати текстове рядове представлення дати як середній формат дати:

1 Формат MsgBox ("09 жовтня 2012", "Середня дата")

Результат такий:

Наступний код показує, як відформатувати подання текстового рядка дати у форматі, визначеному користувачем:

1 Формат MsgBox ("09 жовтня 2012", "dddd: дд/мм/рр")

Конструктор спеціальних форматів VBA

Наша надбудова VBA: AutoMacro містить Конструктор власних форматів для редактора VBA. Це дозволяє встановлювати спеціальні формати та негайно переглядати вихідні дані для потрібного значення:

Надбудова VBA містить безліч інших «Генераторів коду», велику бібліотеку кодів та асортимент інших засобів кодування. Це найкраща надбудова для всіх, хто серйозно займається програмуванням VBA!

Дата форматування VBA у програмі Access

Функція VBA Format Date працює точно так само в Access VBA, що і в Excel VBA.

12345678910 Функція GetDateFilter () як рядок'створіть рядок для отримання інформації з 2 полів дати у формі в AccessЗатемнити strDateField як рядокЯкщо IsNull (Me.txtSDate) = False ТодіЯкщо IsNull (Me.txtEDate) = True, тоді Me.txtEDate = Me.txtSDateЯкщо strDateField2 = "" ТодіGetDateFilter = strDateField & "Між #" & Формат (Me.txtSDate, "мм/дд/рррр") & " # І #" & Формат (Me.txtEDate, "мм/дд/рррр") & " #"Закінчити ЯкщоЗакінчити ЯкщоФункція завершення

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave