vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Datum/Zeit und Timer · Datums- und Zeitfunktionen   |   VB-Versionen: VB609.12.10
Zeitdifferenz zur UTC-Zeit ermitteln

Ermittelt die Zeitdifferenz in Stunden und Minuten zwischen GM-Time (UTC) und Local-Time

Autor:   Dieter OtterBewertung:  Views:  10.849 
www.tools4vb.deSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Sicherlich haben Sie schon einmal folgende Zeitangabe gesehen: 08:45 +02:00
Hierbei wird der Ortszeit die Zeit-Differenz zur GMT-Zeitangabe (UTC) nachgestellt. Je nach Jahreszeit beträgt diese bspw. in Deutschland 1 Stunde (Winterzeit) oder 2 Stunden (Sommerzeit). Diese Schreibweise findet man bspw. auch im Header von EMails wieder.

Nachfolgend eine Funktion, mit der sich die Zeitdifferenz zwischen GMT-Zeitangabe und Ortszeit ermitteln lässt:

' Ermittelt die Zeit-Differenz zwischen UTC und lokaler Zeit
Public Function UTCTimeoffset() As String
  Dim oList As Object
  Dim oItem As Object
  Dim nMinutes As Long
  Dim nHours As Long
  Dim sOffset As String
 
  ' Fehlerbehandlung
  On Error GoTo ErrHandler
 
  Set oList = GetObject( _
    "winmgmts:{impersonationLevel=impersonate}").InstancesOf( _
    "Win32_ComputerSystem")
 
  For Each oItem In oList
    ' Zeit-Differenz in Minuten
    nMinutes = Abs(oItem.CurrentTimeZone)
 
    ' Formatieren nach hh:nn
    nHours = Int(nMinutes / 60)
    nMinutes = nMinutes - (nHours * 60)
 
    sOffset = Format$(nHours, "00") & ":" & Format$(nMinutes, "00")
    sOffset = IIf(oItem.CurrentTimeZone > 0, "+", "-") & sOffset
    Exit For
  Next
 
  ' Objekt freigeben
  Set oList = Nothing
 
  On Error GoTo 0
  UTCTimeoffset = sOffset
  Exit Function
 
ErrHandler:
  UTCTimeoffset = "+00:00"
  Set oList = Nothing
End Function



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.