Как форматировать время в vba (с примерами)


Вы можете использовать функцию «Формат» в VBA со следующими аргументами для форматирования времени в Excel определенным образом:

  • h : часы без нулей
  • чч : часы с нулями
  • n : минуты без нулей
  • nn : минуты с нулями
  • s : секунды без нулей
  • сс : секунды с нулями
  • AM/PM : отображение AM/PM

В следующем примере показано, как на практике форматировать время с помощью VBA.

Пример: форматирование времени с использованием VBA

Предположим, у нас есть следующий столбец даты и времени в Excel:

Мы можем создать следующий макрос для форматирования времени в столбце A и отображения отформатированного времени в столбцах от B до E:

 SubFormatTime ()

Dim i As Integer

For i = 2 To 8
  Range(" B " & i) = Format(Range(" A " & i), " h ")
  Range(" C " & i) = Format(Range(" A " & i), " h:nn ")
  Range(" D " & i) = Format(Range(" A " & i), " h:nn:ss ")
  Range(" E " & i) = Format(Range(" A " & i), " h:nn:ss AM/PM ")
Next i

End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Столбцы от B до E теперь каждый раз отображаются в столбце A в определенном формате.

Обратите внимание, что вы также можете использовать форматы ярлыков Short Time , Medium Time и Long Time :

 SubFormatTime ()

Dim i As Integer

For i = 2 To 8
  Range(" B " & i) = Format(Range(" A " & i), " Short Time ")
  Range(" C " & i) = Format(Range(" A " & i), " Medium Time ")
  Range(" D " & i) = Format(Range(" A " & i), " Long Time ")
Next i

End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Столбцы B–D теперь каждый раз отображаются в столбце A в определенном формате.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:

VBA: как использовать мм/дд/гггг в качестве формата даты
VBA: как форматировать ячейки в процентах
VBA: как применить условное форматирование к ячейкам

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *