Время VBA - Как использовать функцию времени VBA Excel? (Примеры)

Содержание:

Anonim

Excel VBA Time

Функция VBA TIME возвращает текущее время в качестве выходных данных и может также использоваться в качестве входных данных для различных макросовых строк кода. Эта функция не имеет никакого набора параметров для нее и, таким образом, на сегодняшний день имеет самый простой синтаксис, как слово TIME с пустыми скобками, которое можно увидеть, как показано ниже:

Синтаксис для функции VBA TIME:

Время()

На самом деле в скобках также нет необходимости, вы можете просто использовать само слово TIME в своем блоке кода, что позволяет вашей системе возвращать текущее время. У нас также есть аналогичная функция NOW () в Excel VBA, которая возвращает текущее время вместе с датой. Однако в этой статье все наше внимание будет сосредоточено на использовании функции TIME и рассмотрении различных рабочих примеров одного и того же.

Как использовать функцию времени VBA Excel?

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

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

Функция времени VBA - Пример # 1

Текущее системное время с использованием функции TIME:

Выполните следующие шаги, чтобы отобразить текущее время вашей системы.

Шаг 1: Определите подпроцедуру.

Код:

 Sub TimeExample1 () End Sub 

Шаг 2: Определите переменную, которая будет полезна для хранения значения времени для вас. Определите это как строку.

Код:

 Sub TimeExample1 () Dim CurrentTime As String End Sub 

Примечание . Причина определения этой переменной как String заключается в том, что выходные данные функции TIME находятся в строке.

Шаг 3: Используйте функцию VBA TIME, чтобы назначить текущее время переменной, определенной на шаге выше, с помощью оператора присваивания.

Код:

 Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Время окончания Sub 

Шаг 4: Как я упоминал ранее, нет необходимости добавлять скобки после функции TIME, так как это изменчивая функция. Сказав это, следующий код даст эквивалентный вывод по сравнению с приведенным выше кодом.

Код:

 Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () End Sub 

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

Код:

 Sub TimeExample1 () Dim CurrentTime As String CurrentTime = Time () MsgBox CurrentTime End Sub 

Шаг 6: Запустите этот код, нажав F5 или кнопку Run, и посмотрите результат. Вы должны получить вывод, как показано на рисунке ниже.

Обратите внимание, что время, отраженное на изображении выше, является временем, в течение которого этот код запускается в системе. При самостоятельной попытке ваш вывод может отличаться в зависимости от времени работы с этим кодом.

Функция времени VBA - пример № 2

VBA TIME в сочетании с функцией Date для возврата текущего времени с Today's Date:

Как было сообщено ранее во введении к этой статье, есть функция NOW (), которая отображает текущую дату и время в Microsoft Excel. Смотрите скриншот, приведенный ниже.

Однако в VBA эта функция не работает. Поэтому в VBA мы должны использовать комбинацию функций VBA Date и VBA TIME, чтобы получить текущую дату и текущее время. VBA Date даст текущую дату, а VBA Time даст текущее время (которое мы уже видели в первом примере).

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

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

Шаг 2: Определите новую подпроцедуру, дав имя макросу.

Код:

 Sub Example2 () End Sub 

Шаг 3: Мы хотели, чтобы наш вывод был сохранен в ячейке A1 нашего листа Excel. Для этого начните писать код, как показано ниже.

Код:

 Sub Example2 () Диапазон ("A1"). Значение = Конец Sub 

Шаг 4. Теперь используйте комбинацию функций VBA DATE и VBA TIME, как показано ниже, и присвойте это значение ячейке A1.

Код:

 Sub Example2 () Диапазон ("A1"). Значение = Дата & "" & Sub End Sub 

Функция DATE возвращает текущую дату системы, а функция TIME возвращает текущее время. Пробел, заключенный в двойные кавычки («»), позволяет использовать пробел между датой и временем в конечном выводе Два оператора & (и) работают как объединяющие операторы, которые объединяют DATE и TIME с пробелом в нем.

Шаг 5: Запустите код, нажав F5 или кнопку Run вручную. Вы увидите результат в ячейке A1 вашего листа как удар:

Здесь, опять же, обратите внимание, что время, отображаемое в ячейке A1, - это дата и время, когда этот код выполняется мной самостоятельно. Поэтому, когда вы запустите этот код, результаты будут другими.

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

Шаг 6: Напишите код, указанный ниже, в вашем VBA-скрипте.

Код:

 Sub Example2 () Range ("A1"). Значение = Дата & "" & Диапазон времени ("A1"). NumberFormat = "дд-ммм-гггг чч: мм: сс AM / PM" End Sub 

Шаг 7: Нажмите F5 или кнопку Run вручную, и вы увидите результат, как показано ниже, в ячейке A1 вашего рабочего листа.

Функция времени VBA - Пример № 3

Функция VBA TIME для отслеживания времени открытия и даты рабочей книги:

Иногда есть одна электронная таблица, которую мы часто открываем (например, список сотрудников организации) и вносим в нее изменения. Возможно, нам будет интересно узнать дату и время внесения изменений в таблицу. Функция времени VBA может использоваться для отслеживания даты и времени при каждом открытии рабочей книги. Смотрите шаги ниже, чтобы работать над тем же.

Шаг 1. Создайте новый лист в вашей книге Excel и переименуйте его, как вам удобно. Я переименую его в (Time_Track).

Шаг 2: Дважды щелкните ThisWorkbook в VBE (редактор Visual Basics).

Шаг 3. В раскрывающемся списке объектов выберите «Рабочая книга» вместо «Общие».

Шаг 4: Вы увидите, что новая частная подпроцедура будет определена под именем Workbook_Open () в VBE.

Код:

 Private Sub Workbook_Open () End Sub 

Шаг 5: Запишите нижеупомянутый код в этой подпроцедуре макроса, как показано на рисунке ниже:

Код:

 Private Sub Workbook_Open () Dim LB As Long LB = Sheets ("Time_Track"). Ячейки (Rows.Count, 1) .End (xlUp) .Row + 1 Sheets ("Time_Track"). Ячейки (LB, 1). Значение = Дата & "" & Время () End Sub 

Здесь определяется переменная LB типа Long, чтобы определить ячейку рядом с последней использованной ячейкой, в которой можно сохранить выходные данные. Затем, используя комбинацию функций VBA DATE и TIME, мы присвоили значение этой ячейке.

Шаг 6: Запустите код, нажав F5 или кнопку Run вручную, и просмотрите результат в столбце A рабочего листа.

Этот код будет хранить значение даты и времени каждый раз, когда вы открываете рабочий лист Time_Track.

Это из этой статьи. Давайте подведем итоги, написав несколько вещей, которые нужно запомнить.

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

  • Функция VBA TIME сохраняет вывод в виде строки в Excel. Тем не менее, мы также можем сохранить его как формат даты, определяя переменную как дату вместо строки.
  • Функция TIME не требует никаких аргументов. Это изменчивая функция.
  • Даже для вызова функции не нужны скобки. Только ВРЕМЯ достаточно, чтобы получить текущее время.
  • Функция TIME по умолчанию сохраняет значение времени в формате чч: мм: сс (24-часовой формат). Однако иногда формат вывода зависит также от формата вашего системного времени.

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

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

  1. Как создать Excel VBA MsgBox?
  2. РАБОЧИЙ ДЕНЬ Excel Функция | формула
  3. Руководство по VBA Do While Loop
  4. Вставить дату в Excel