• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Excelde TCMB Kurlarını Alma (Yeni)

Başlığın hiç bir mesajında ekli bir dosya yok. #4 nolu mesajdaki kodu boş bir module yapıştırıp F5 ile çalıştırın. Zaten @Haluk Bey API key'i de hibe etmiş...

.
 
Dalgınlık walla...... yaşlandık artık :)

.
 
Merhaba;

4 nolu mesajdaki kodu çalıştırdım. Hata aldım.
"API KEY veya URL'yi kontrol edin"
Nerde yanlış yaptım ?
 
Bundan daha acik bir hata mesaji olabilir mi?

.
 
Haluk Bey;

API KEY nedir ?
URL hatalı ise doğrusu nedir ? Ya da doğrusu nereden bulunur ?
Bende bu soruların yanıtı yok, o yüzden yazıyorum, acemiliğime verin. :)
 
URL doğru, siz TCMB sitesinde EVDS'den kendinize bir API anahtarı alıp onu kullanacaksınız.

.
 
Merhaba Haluk bey ;

Benim sorum biraz farklı olacak örneğin 01-01-2024 31.05.2024 tarihleri arasında TP.KTF17 ( Ticari (TL Üzerinden Açılan)(Akım Veri,%)-Düzey
Bankalarca Açılan Kredilere Uygulanan Ağırlıklı Ortalama Faiz Oranları (Akım Veriler,%) verisini çekmek istiyorum , tmm API key 'de aldım ancak nasıl yapabilirim sizin Makroyu uyarlayamadım yardımcı olabilirseniz sevinirim.

Teşekkür ederim.
 
@kumandur;

Ekli dosyayı bir deneyin.... aradığınız veriler bunlar mı, emin olamadım.

.
 

Ekli dosyalar

@kumandur;

Ekli dosyayı bir deneyin.... aradığınız veriler bunlar mı, emin olamadım.

.

Evet tamamen istediğim bu idi , öncelikle çok teşekkür ederim kodu incelerim ( tarih aralığı vs ) ancak Koda baktığımda 2024 öncesini getirmiyor ve ek olarak
strURL = "https://evds2.tcmb.gov.tr/EVDSServlet?orderby=Tarih+desc&thousand=1" & _
"&decimal=2&frequency=YEARWEEK&aggregationType=avg&formula=0&graphicType=0&skip=0&take=20&sort=Tarih%23true" & _
"&select=TP.KTF17-0&startDate=04-01-2002&endDate=31-05-2024&obsCountEnabled=&obsCount=&categories=5870&mongoAdresses=&userId=38040" & _
"&datagroupString=bie_kt100h&dateFormatValue=&customFormula=null&excludedSeries=null"

bölümünün açıklaması EVDS sisteminde mevcut mu ?

Tekrardan teşekkür ederim.
 
Kod, EVDS'de 04-01-2002 ile 31-05-2024 tarihleri arasındaki kayıtlı verileri getiriyor.

Siz bu tarihleri kullanarak, manuel olarak EVDS'den rapor aldığınızda 2024 öncesi verileri görebiliyor musunuz?

.
 
Hmmmm....... URL'de aşağıdaki kısım alınan veri aralığını belirtiyor.

Örneğin, ilk 20 veri için;

Kod:
&skip=0&take=20


Daha sonraki 20 veri için;

Kod:
&skip=20&take=20


..... gibi düzenlemelerle diğerleri de alınabiliyor.



Ben uyanıklık yapıp, aşağıdakini denedim ama olmadı :)

Kod:
&skip=0&take=200


"take" parametresini değiştirmeye izin vermiyor.

.
 
Sunucudan dönen cevap içerisinde "totalCount" ile, sorgunun sonucunda toplam kaç satır veri olduğu belirtiliyor. Bu değeri, yukarıdaki mesajımda belirtilen "skip" ile kullanarak, gerekli döngü sayısını hesaplayıp buna göre tüm verileri çekebiliyoruz.

Buna ilişkin yapılan revizyon ekte verilmekte olup, tüm veriler alınabilmektedir...

.
 

Ekli dosyalar

Haluk bey çok zahmet verdim, teşekkür ederim yardımlarınız için , elinize sağlık
 
Merhaba arkadaşlar ben döviz kurlarının saat 12:00 tutarlarını almak istiyorum nasıl bir yol izleyebilirim 2025-2026 yılın ait.
Yardımınız için şimdiden teşekkürler
 

Ekli dosyalar

  • kurr.png
    kurr.png
    24 KB · Görüntüleme: 3
Bilgilendirme için teşekkür ederim; haberim yoktu...

Aşağıdaki gibi kullanabilirsiniz (test edilmiştir):

C#:
Sub Test()
    Dim oHttp As Object, sUrl As String
   
    sUrl = "https://evds2.tcmb.gov.tr/service/evds/series=TP.DK.USD.A-TP.DK.EUR.A-TP.DK.CHF.A-TP.DK.GBP.A-TP.DK.JPY.A&" & _
            "startDate=01-10-2017&endDate=01-11-2017&type=xml"
           
    Set oHttp = CreateObject("MSXML2.XMLHTTP.6.0")
   
    oHttp.Open "GET", sUrl, False
    oHttp.setRequestHeader "key", "XXXXXXXX"
    oHttp.send
   
    Debug.Print oHttp.ResponseText
   
End Sub

Zeki bey merhaba, bu konuda bir desteğiniz olabilir mi?
 
Zeki bey merhaba, bu konuda bir desteğiniz olabilir mi?
Evet, ancak EVDS sisteminden üyelik açıp api key edinmeniz gerek. Bireysel kullanım ücretsiz.

Aşağıdaki kod üzerinde çalışın...

C#:
Sub TCMB_TÜFE_Getir()
    Dim xmlHttp As Object
    Dim apiKey As String, url As String
    Dim response As String
    Dim startDate As String, endDate As String
    Dim seriesCode As String
    Dim doc As Object
   
    ' --- AYARLAR ---
    apiKey = "jbkjblblblb" ' EVDS'den aldığınız anahtar
    seriesCode = "TP.FG.J0" ' TÜFE (2003=100) Endeks kodu
    startDate = "01-01-2025" ' Başlangıç tarihi (GG-AA-YYYY)
    endDate = "01-03-2026"   ' Bitiş tarihi
    ' ---------------
   
    ' tüfe genel. gelen endeksler aylık değişimdir
    url = "https://evds3.tcmb.gov.tr/igmevdsms-dis/series=" & seriesCode & _
          "&startDate=" & startDate & "&endDate=" & endDate & "&type=xml"
   
    'tüfe grup listesi
'    url = "https://evds3.tcmb.gov.tr/igmevdsms-dis/serieList/type=xml&code=bie_tukfiy4"
   
    Set xmlHttp = CreateObject("MSXML2.XMLHTTP")
   
    With xmlHttp
        .Open "GET", url, False
        .setRequestHeader "key", apiKey
        .send
        Set doc = .responseXML
    End With
   
    doc.Save "C:\Users\zeki\Desktop\eee.xml"
    MsgBox "Veri çekildi.", vbInformation
End Sub

1773871801668.png
 
Üyeliğim var. API Kopyalaya bastım, kodu kopyaladım, makroya yazdım. bir excel yarattım, makroyu ekledim.
doc.Save "C:\Users\zeki\Desktop\eee.xml" buraya ne yazacağım, sonrasında makroyu mu çalıştıracağım.
 

Ekli dosyalar

  • evds.png
    evds.png
    106.4 KB · Görüntüleme: 1
O bölüme kendi masaüstü yolunu yazmalısınız. Sonrasında makroyu çalıştırmalısınız.
 
O bölüme kendi masaüstü yolunu yazmalısınız. Sonrasında makroyu çalıştırmalısınız.
Onu da yaptım, bu şekilde oluşturdu, ben Excelin içine gelsin istiyorum.
 

Ekli dosyalar

  • evds.png
    evds.png
    107.6 KB · Görüntüleme: 2
  • EVDS_veriler.xlsx
    EVDS_veriler.xlsx
    950.4 KB · Görüntüleme: 0
Geri
Üst