Функция VBA DateValue

Работая в VBA, мы работаем с датами. Мы назначаем даты различным переменным или мы можем использовать функцию DATEVALUE для этого. DATEVALUE - это и таблица, и функция Visual Basic. В листе он дает серийную дату. Когда мы используем эту функцию в VBA, она дает нам значение даты. Как я уже говорил выше, функция DATEVALUE, используемая в VBA, возвращает значение даты. Тип данных, который мы использовали для наших переменных при использовании этой функции - дата. Это несколько похоже на функцию рабочего листа. Как мы используем эту функцию, довольно просто, она принимает дату в качестве аргумента.

Синтаксис DateValue в Excel VBA

Синтаксис для функции VBA DateValue в Excel выглядит следующим образом:

Что эта функция делает, что она принимает значение или аргумент в виде строки и возвращает ее к дате. Почему мы используем эту функцию, потому что мы работаем с большим количеством данных, и каждый человек не похож, поэтому будет разница в вводе форматов даты для каждого человека. Если нам необходимо выполнить некоторые вычисления по датам в данных, то нам придется преобразовать каждый другой формат дат, имеющихся в данных, в единый формат, а затем выполнить расчет. Теперь представьте большой кусок данных с большим количеством разных типов дат.

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

Как использовать VBA DateValue в Excel?

Мы узнаем, как использовать функцию VBA DateValue с несколькими примерами в Excel.

Вы можете скачать этот шаблон VBA DateValue Excel здесь - VBA DateValue Excel Template

Пример № 1 - VBA DateValue

Давайте начнем с очень простого шага. Мы присвоим переменной значение даты в виде строки, а затем напечатаем значение даты для этой переменной.

Шаг 1: Теперь, когда мы окажемся внутри редактора, у нас будет много опций в заголовке, со вкладки вставки вставьте новый модуль в редактор, где мы выполним все демонстрационные примеры,

Шаг 2: Теперь давайте начнем нашу процедуру, как показано ниже.

Код:

 Sub Sample () End Sub 

Шаг 3: Давайте объявим переменную как тип данных Date, как показано ниже,

Код:

 Sub Sample () Dim A As Дата Конец Sub 

Шаг 4: Теперь давайте предоставим переменную A с некоторым значением, используя функцию DATEVALUE, как показано ниже.

Код:

 Sub Sample () Dim A As Date A = DateValue ("02/02/2019") End Sub 

Шаг 5: Я указал дату в двойных кавычках, чтобы рассматривать ее как строку, теперь использую функцию msgbox для отображения значения, хранящегося в A.

Код:

 Sub Sample () Dim A As Date A = DateValue ("02/02/2019") MsgBox A End Sub 

Шаг 6: Выполните приведенный выше код и посмотрите результат.

Мы знаем, что в VBA дата указывается в символах #, а строка - в «двойных кавычках». Но DATEVALUE меняет значение на дату.

Пример №2 - VBA DateValue

Теперь давайте примем данные от пользователя, потому что пользователь может предоставить дату в любом формате. Мы преобразуем значение, указанное пользователем в дате, используя функцию DATEVALUE.

Шаг 1: Из Вставки выберите новый модуль в редакторе.

Шаг 2: Теперь давайте запустим еще одну подпроцедуру следующим образом.

Код:

 Sub Sample1 () End Sub 

Шаг 3: Объявите две переменные как даты, так как мы будем принимать значение из ввода от пользователя в одной переменной, а в другой мы будем использовать функцию DATEVALUE, чтобы преобразовать ее в дату.

Код:

 Sub Sample1 () Dim InputDate As Date, OutputDate As Date End Sub 

Шаг 4: В переменной входных данных возьмите ввод от пользователя, используя функцию поля ввода.

Код:

 Sub Sample1 () Dim InputDate As Date, OutputDate As Date InputDate = InputBox ("Введите дату") End Sub 

Шаг 5: В переменной Outputdate изменим дату, которую мы получаем в качестве входных данных, с помощью функции DATEVALUE, как показано ниже.

Код:

 Sub Sample1 () Dim InputDate As Date, OutputDate As Date InputDate = InputBox («Введите дату») OutputDate = DateValue (InputDate) End Sub 

Шаг 6: Теперь давайте покажем значение, которое мы имеем сейчас, используя функцию msgbox.

Код:

 Sub Sample1 () Dim InputDate As Date, OutputDate As Date InputDate = InputBox («Введите дату») OutputDate = DateValue (InputDate) MsgBox OutputDate End Sub 

Шаг 7: Запустите приведенный выше код и введите следующую дату.

Шаг 8: Кликните OK и увидите окончательный результат следующим образом.

Хотя формат даты от пользователя был другим, мы успешно преобразовали его в дату.

Пример № 3 - VBA DateValue

Мы можем видеть даты в нашем листе и как использовать функцию DATEVALUE на них? У меня есть дата в ячейке A1 следующим образом.

Давайте изменим его на стандартную дату, которая у нас есть.

Шаг 1: Снова в том же модуле запустите другую подпроцедуру, как показано ниже.

Код:

 Sub Sample2 () End Sub 

Шаг 2: Объявите переменную как Date, как показано ниже.

Код:

 Sub Sample2 () Dim Dt As Дата Конец Sub 

Шаг 3: Теперь в переменной Dt сохраните значение ячейки A1, как показано ниже, используя функцию DATEVALUE.

Код:

 Sub Sample2 () Dim Dt As Date Dt = DateValue (Sheet1.Range ("A1"). Value) End Sub 

Шаг 4: Теперь давайте покажем значение, хранящееся в нашей переменной.

Код:

 Sub Sample2 () Dim Dt As Date Dt = DateValue (Sheet1.Range ("A1"). Значение) MsgBox Dt End Sub 

Шаг 5: Теперь выполните приведенный выше код и давайте посмотрим на результат.

То, что нужно запомнить

  • DATEVALUE - это функция даты в VBA.
  • Это похоже на функцию рабочего листа, функция рабочего листа дает нам серийные номера даты, а в VBA - DATEVALUE.
  • Эта функция принимает аргумент в качестве даты в строке и преобразует ее в строку.

Рекомендуемые статьи

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

  1. Функция копирования и вставки в VBA
  2. Формат даты Excel VBA
  3. Индекс VBA вне диапазона
  4. Excel ISNUMBER Formula

Категория: