Всем добрый день. Подсмотрел в интернете макрос по получению даты и времени из интернета, при запуске процедуры "ВывестиТекущуюДатуИВремя" выводит вместо даты 00:00:00, может кто сможет подсказать что не так?
| Код |
|---|
Function GetRealTime(Optional ByVal GMT& = 4) As Date
On Error Resume Next: Err.Clear: Dim http As Object, URL$, GMT_Time$, m$, mv$
'GetRealTime = Now ' значение по-умолчанию
Set http = CreateObject("Microsoft.XMLHTTP")
URL$ = "http://yandex.ru/" ' можно указать практически любой сайт
http.Open "GET", URL$, False
http.Send
GMT_Time = http.GetResponseHeader("Date")
Set http = Nothing
' пример полученной строки: Sun, 27 Apr 2014 06:14:44 GMT
'If Not (GMT_Time Like "???, *# ??? #### ##:##:##*GMT*") Then Exit Function
GMT_Time = Trim(Split(GMT_Time, ",")(1))
GMT_Time = Trim(Split(GMT_Time, "GMT")(0))
m$ = Trim(Split(GMT_Time)(1))
mv$ = (InStr(1, "janfebmaraprmayjunjulaugsepoctnovdec", m$, vbTextCompare) + 2) / 3
GMT_Time = Replace(GMT_Time, " " & m$ & " ", "." & Format(mv$, "00") & ".")
GetRealTime = CDate(GMT_Time) + Val(GMT&) / 24
End Function
Sub ВывестиТекущуюДатуИВремя()
t = GetRealTime
MsgBox t, vbInformation, "Текущее время (в Москве)"
End Sub
|