Arkadaşlar merhaba,
Döviz kuru sorgusu yaptığım fonksiyonda hata alıyorum. Kurların alındığını tablo ile ilgili bir sıkıntı olabileceğini düşünüyorum. Sorunu nasıl halledebilirim ?
Teşekkürler...
Döviz kuru sorgusu yaptığım fonksiyonda hata alıyorum. Kurların alındığını tablo ile ilgili bir sıkıntı olabileceğini düşünüyorum. Sorunu nasıl halledebilirim ?
Teşekkürler...
Kod:
Function KurX(veri As Date, DovizCinsi As Variant, DovizKuru As Variant)
Application.Volatile
'-----------Ben ekledim-------------------
' If DovizCinsi = "Usd" Then
' DovizCinsi = 1
' ElseIf DovizCinsi = "Eur" Then
' DovizCinsi = 4
' ElseIf DovizCinsi = "Gbp" Then
' DovizCinsi = 5
' End If
If DovizKuru = "Döviz Alış" Then
DovizKuru = "<ForexBuying>"
ElseIf DovizKuru = "Döviz Satış" Then
DovizKuru = "<ForexSelling>"
ElseIf DovizKuru = "Efektif Alış" Then
DovizKuru = "<BanknoteBuying>"
ElseIf DovizKuru = "Efektif Satış" Then
DovizKuru = "<BanknoteSelling>"
End If
'----------------------------------------
Set dnm = CreateObject("MSXML2.XMLHTTP")
gun = veri - 1
Do
a = Year(gun) & Format(Month(gun), "0#") & "/" & Replace(CStr(gun), ".", "")
baglan = "http://www.tcmb.gov.tr/kurlar/" & a & ".xml"
'baglan = "http://www.tcmb.gov.tr/kurlar/today.xml"
dnm.Open "get", baglan, False
dnm.Send
icerik$ = dnm.responseText
temizlik = Split(icerik, "<Currency CrossOrder="): a = 1
icerik$ = ""
On Error Resume Next
cr = IsError(InStr(temizlik(DovizCinsi * 1), "</CurrencyName>"))
gun = gun - 1
Loop While cr = ""
'x = 2
sonuclar = Split(temizlik(DovizCinsi * 1), "</CurrencyName>")
sonuclar1 = Split(sonuclar(1), DovizKuru)
Sonuc = VBA.Left(sonuclar1(1), 6)
KurX = CDbl(Replace(Sonuc, ".", ","))
End Function
