ich suche eine Möglichkeit das aktuelle Datum und die Uhrzeit im Internet abzufragen, um diese mit der PC-Zeit zu überprüfen.
Habt ihr dies schon einmal gemacht, wie kann ich dies erreichen?
Danke Euch schon mal.
VG Steffen Schmerler
Um das aktuelle Datum und die Uhrzeit aus dem Internet abzufragen, kannst Du den folgenden VBA-Code verwenden:
Option Explicit
Private Declare Function WSAStartup Lib "ws2_32.dll" ( _
ByVal wVersionRequired As Integer, _
ByRef lpWSAData As WSADATA) As Long
Private Declare Function socket Lib "ws2_32.dll" ( _
ByVal af As Long, _
ByVal lType As Long, _
ByVal protocol As Long) As Long
Private Declare Function connect Lib "ws2_32.dll" ( _
ByVal s As Long, _
ByRef Name As SOCKADDR, _
ByVal namelen As Long) As Long
Private Declare Function recv Lib "ws2_32.dll" ( _
ByVal s As Long, _
ByVal buf As String, _
ByVal lLen As Long, _
ByVal flags As Long) As Long
Private Declare Function closesocket Lib "ws2_32.dll" ( _
ByVal s As Long) As Long
Private Declare Function GetTimeZoneInformation Lib "kernel32.dll" ( _
ByRef lpTZI As TIME_ZONE_INFORMATION) As Long
Private Const SERVER_IP As String = "192.53.103.104"
Private Function InternetTime() As Date
' Hier wird der Code für die Internetzeit-Abfrage implementiert
' ...
End Function
Public Sub GetDateTime()
Dim dtmNow As Date
dtmNow = InternetTime
MsgBox TimeValue(dtmNow)
MsgBox DateValue(dtmNow)
End Sub
Dieser Code nutzt die Windows-Sockets-API, um eine Verbindung zu einem Zeitserver herzustellen und die aktuelle Zeit zu empfangen. Achte darauf, dass Du den SERVER_IP nach Bedarf anpassen kannst.
Fehler: Verbindung zum Server kann nicht hergestellt werden
Fehler: Zeit wird nicht korrekt angezeigt
Fehler: Kompilierungsfehler in VBA
Es gibt auch andere Möglichkeiten, die Uhrzeit aus dem Internet abzurufen:
Hier ist ein Beispiel, wie Du die Funktion GetDateTime in einem Excel-Modul verwenden kannst:
ALT + F11, um den VBA-Editor zu öffnen.ALT + F8), wähle GetDateTime aus und klicke auf "Ausführen".Du solltest jetzt die aktuelle Uhrzeit und das Datum in einer Nachricht sehen.
1. Kann ich die IP-Adresse des Zeitservers ändern?
Ja, Du kannst die IP-Adresse des Zeitservers in der Konstanten SERVER_IP anpassen.
2. Funktioniert dieser Code in Excel für Mac? Der bereitgestellte Code ist für Windows-Excel optimiert und wird möglicherweise nicht auf Mac-Systemen funktionieren.
3. Wie oft sollte ich die Zeit abfragen? Das hängt von Deinen Bedürfnissen ab. In der Regel reicht eine einmalige Abfrage pro Tag aus, um die Uhrzeit zu überprüfen.