Jak sformatować czas w vba (z przykładami)
Możesz użyć funkcji Format w VBA z następującymi argumentami, aby sformatować godziny w Excelu w określony sposób:
- h : godziny bez zer
- gg : godziny z zerami
- n : minuty bez zer
- nn : minuty z zerami
- s : sekundy bez zer
- ss : sekundy z zerami
- AM/PM : Wyświetlanie AM/PM
Poniższy przykład pokazuje, jak w praktyce formatować godziny przy użyciu VBA.
Przykład: formatowanie czasów przy użyciu języka VBA
Załóżmy, że w programie Excel mamy następującą kolumnę daty/godziny:
Możemy utworzyć następujące makro, aby sformatować czasy w kolumnie A i wyświetlić sformatowane czasy w kolumnach od B do 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
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Kolumny od B do E są teraz wyświetlane za każdym razem, gdy kolumna A jest sformatowana w określony sposób.
Pamiętaj, że możesz także użyć formatów skrótów Krótki czas , Średni czas i Długi czas :
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
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Kolumny od B do D są teraz wyświetlane za każdym razem w kolumnie A sformatowanej w określony sposób.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
VBA: Jak używać mm/dd/rrrr jako formatu daty
VBA: Jak sformatować komórki jako procent
VBA: Jak zastosować formatowanie warunkowe do komórek