Як відформатувати час у vba (з прикладами)
Ви можете використовувати функцію Format у VBA з такими аргументами, щоб відформатувати час у Excel певним чином:
- h : години без нулів
- hh : години з нулями
- n : хвилини без нулів
- nn : хвилини з нулями
- s : секунди без нулів
- ss : секунди з нулями
- 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 у певному форматі.
Зауважте, що ви також можете використовувати короткі формати швидкого доступу , середні та довгі :
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: як застосувати умовне форматування до клітинок