Xml Nesnesi İle TCMB’den Kurları Almak

TCMB’den kurların tamamını almaktan ziyade sadece dolar ve euro kurunu almak isteyebiliriz.


Sub kurlarigetir()
Dim xml As Object
Dim link As String
Dim tablo As Object
Dim ws As Worksheet

Set xml = CreateObject("MSXML2.DOMDocument")
Set ws = Sheets("SPR")

xml.async = False

xml.validateOnParse = False

link = "https://www.tcmb.gov.tr/kurlar/today.xml"

xml.Load link

Set tablo = xml.SelectNodes("//Currency[CurrencyName='EURO']")

If tablo.Length <> 0 Then

ws.Range("ag13") = tablo(0).ChildNodes(6).Text

Set tablo = xml.SelectNodes("//Currency[CurrencyName='US DOLLAR']")

ws.Range("ag14") = tablo(0).ChildNodes(6).Text

Else
MsgBox "Kurlar revize olurken bir hata oluştu.Kurları muhakkak kontrol ediniz!"
End If

Set tablo = Nothing
Set xml = Nothing
link = vbNullString
End Sub

Burada dikkat edilmesi gereken husus; “.ChildNodes(6)” ifadesi. Neden 6?

Çünkü ben ilgili kurun efektif satış rakamını almak istedim.

Döviz Alış Rakamı için .ChildNodes(3)

Döviz Satış Rakamı için .ChildNodes(4)

Efektif Alış Rakamı için .ChildNodes(5)

Efektif Satış Rakamı için .ChildNodes(6)  yazılması gerekir.

Paylaşmayı unutmayın!
0 0 votes
Article Rating
Subscribe
Bildir
guest
0 Yorum
Inline Feedbacks
View all comments