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. Вы также можете просмотреть наши другие предлагаемые статьи -
- Как создать Excel VBA MsgBox?
- РАБОЧИЙ ДЕНЬ Excel Функция | формула
- Руководство по VBA Do While Loop
- Вставить дату в Excel