TOP

将汇率从 NBU 网站导入到 LibreOffice Calc

为那些经常需要在 LibreOffice Calc 中使用 NBU 汇率的人提供现成的功能。

它有助于从NBU网站自动获取货币汇率值通过其代码和日期。



BASIC NBU_RATE 函数的代码

要添加导入NBU汇率的功能,打开菜单Tools - Macros - Edit Macros...,选择Module1并将以下文本复制到该模块中:

Function NBU_RATE(ByVal pCurrency, ByVal pDate)
  'moonexcel.com.ua 
  Dim FCalc As Object
  
  If Len(pCurrency) = 0 Or Len(pDate) = 0 Then Exit Function             
      
  FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess")
  
  tDate = FCalc.callFunction("TEXT", Array(pDate,"YYYYMMDD"))
                                                    
  RequestString = "https://bank.gov.ua/NBU_Exchange/exchange_site?start=" & tDate & "&end=" & tDate & "&valcode=" & pCurrency
            
  WebServiceResponse = FCalc.callFunction("WEBSERVICE", Array(RequestString))  
  
  NBU_RATE = FCalc.callFunction("FILTERXML", Array(WebServiceResponse,"//rate_per_unit"))    
End Function

关闭 Macro Editor 并返回到 LibreOffice Calc。

现在您可以手动输入我们的 NBU_RATE() 函数。该函数的语法如下:

=NBU_RATE (货币代码; 日期)

我们将得到以下结果: