Function NBU_RATE(sCurr$, iiDate As Date)
Dim sURI As String
Dim oHttp As Object
Dim htmlcode As String
sURI = "https://bank.gov.ua/control/uk/curmetal/currency/search?formType=" & _
"searchFormDate&time_step=daily&date=" & iiDate & "&execute"
On Error Resume Next
Set oHttp = CreateObject("MSXML2.XMLHTTP")
If Err.Number <> 0 Then
Set oHttp = CreateObject("MSXML.XMLHTTPRequest")
End If
If oHttp Is Nothing Then Exit Function
On Error GoTo ConnectionError
oHttp.Open "GET", sURI, False
oHttp.send
htmlcode = Replace(Replace(oHttp.responseText, vbTab, ""), vbCrLf, "")
bRes = False
Set RegExp = CreateObject("VBScript.RegExp")
RegExp.Pattern = "<tr>\s{1,}<td[^>]*>" & sCurr & "</td>\s{1,}" & _
"<td[^>]*>(.+?)</td>\s{1,}" & _
"<td[^>]*>([0-9]+)</td>\s{1,}" & _
"<td[^>]*>(.+?)</td>\s{1,}" & _
"<td[^>]*>([0-9\.]+)</td>"
bRes = RegExp.test(htmlcode)
If bRes Then
Set oMatches = RegExp.Execute(htmlcode)
NBU_RATE = Val(oMatches(0).subMatches(3)) / oMatches(0).subMatches(1)
Exit Function
End If
Exit Function
ConnectionError:
End Function
После переустновки офиса не могу заставить работать корректно следующую функцию(до переустановки работала исправно) выдает значение "0"
Функция NBU_RATE не работает корректно выдает значение "0", После переустновки офиса не могу заставить работать корректно следующую функцию(до переустановки работала исправно)
После переустновки офиса не могу заставить работать корректно следующую функцию(до переустановки работала исправно):
Function NBU_RATE(sCurr$, iiDate As Date) Dim sURI As String Dim oHttp As Object Dim htmlcode As String sURI = "https://bank.gov.ua/control/uk/curmetal/currency/search?formType=" & _ "searchFormDate&time_step=daily&date=" & iiDate & "&execute" On Error Resume Next Set oHttp = CreateObject("MSXML2.XMLHTTP") If Err.Number <> 0 Then Set oHttp = CreateObject("MSXML.XMLHTTPRequest") End If If oHttp Is Nothing Then Exit Function On Error GoTo ConnectionError oHttp.Open "GET", sURI, False oHttp.send htmlcode = Replace(Replace(oHttp.responseText, vbTab, ""), vbCrLf, "")
bRes = False Set RegExp = CreateObject("VBScript.RegExp")
bRes = RegExp.test(htmlcode) If bRes Then Set oMatches = RegExp.Execute(htmlcode) NBU_RATE = Val(oMatches(0).subMatches(3)) / oMatches(0).subMatches(1) Exit Function End If Exit Function ConnectionError: End Function
Подозреваю что в настройках нехватает галочки по библиотеке котороая поможет правильно преобразовать.