Makro ile Günlük Döviz Kuru

Katılım
6 Temmuz 2015
Mesajlar
55
Excel Vers. ve Dili
Office 2016
Arkadaşlar merhaba,
Forumu çok aradım ama güncel merkez bankası sitesinden döviz kuru alabilen bir kod bulamadım.
Elinde olan var ise mevcut günün kurunu workbook açıldığında otomaik alıp istediğim bir hücreye yazdırmasını istiyorum.
Desteğiniz için şimdiden teşekkür ederim.
 
Katılım
3 Nisan 2014
Mesajlar
395
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Merhaba,

Alıntıdır


=
Kod:
=Webdoviz("[COLOR="Red"]10.11.2008[/COLOR]";"[COLOR="red"]usd[/COLOR]";[COLOR="red"]1[/COLOR])
Kırmızı renkli alanların açıklaması:
1- Tarih: Tarihi elle girecekseniz "01.01.2016" gibi tırnak içinde giriniz.

2- Döviz Tipi: Dolar için "usd", Euro için "eur" yazınız.

3- Tipi: Alış için 1, satış için 2 yazınız.


Kod:
DefVar E
Function Webdoviz(ByVal Tarih As Date, ByVal Dovtip As String, ByVal Tipi As Long) As Variant
Dim gun As String, ay As String, yil As String, path As String, kur As Double
Dim icerik As String, xmlhttp As Object, evn As Variant
Set xmlhttp = CreateObject("MSXML2.XMLHTTP")
Application.Volatile
Dovtip = UCase(Dovtip)
gun = Day(Tarih): ay = Month(Tarih): yil = Year(Tarih)
If Len(gun) = 1 Then gun = "0" & gun
If Len(ay) = 1 Then ay = "0" & ay
path = "http://www.tcmb.gov.tr/kurlar/" & yil & ay & "/" & gun & ay & yil & ".xml"
xmlhttp.Open "GET", path, False
xmlhttp.send "at"
If xmlhttp.Status = 200 Then
    icerik = xmlhttp.responseText
    temizlik = Split(icerik, "<Currency CrossOrder=")
    For y = 0 To UBound(temizlik)
        If temizlik(y) Like "*=""" & Dovtip & "*" Then
            sonuclar = Split(temizlik(y), "</CurrencyName>")
            evn1 = Split(sonuclar(1), "<ForexBuying>")
            evn2 = Split(sonuclar(1), "<ForexSelling>")
            evn3 = Split(sonuclar(1), "<BanknoteBuying>")
            evn4 = Split(sonuclar(1), "<BanknoteSelling>")
            Select Case Tipi
                Case 1: evn = Split(evn1(1), "</")
                Case 2: evn = Split(evn2(1), "</")
                Case 3: evn = Split(evn3(1), "</")
                Case 4: evn = Split(evn4(1), "</")
            End Select
            Exit For
        End If
    Next y
End If
'Kuruş hanesini benim gibi virgül kullananlar için
Webdoviz = Replace(evn(0), ".", ",")

'Kuruş hanesini nokta kullananlar için
'Webdoviz = evn(0)
End Function
KTF yani kullanıcı tanımlı fonksiyondur, kodları Excel dosyanızda bir modüle kopyalayıp kaydedip VBA penceresini kapatınız. Daha sonra sayfada herhangi bir hücreye normal excel fonksiyonu yazar gibi =webdöviz yazınız.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Sayfaların üst orta kısmındaki ARAMA kısmına Merkez Bankası yazarak arama yapmanız yeterli olur.
Konu, forumda çokça sorulan ve çözüme ulaşmış bir konu bence.

Örneğin aşağıdaki konu usayfasına bir bakın isterseniz iki ayrı seçenek var.

KTF: Belli Tarih, Seçilen Döviz/Kur Türü TCMB Kuru
.
 
Katılım
6 Temmuz 2015
Mesajlar
55
Excel Vers. ve Dili
Office 2016
Sayın rabbace teşekkür ederim.
Ancak kodda hata alıyorum. Sanıyorum merkez bankasının eski sitesi için çalışıyor.
Siz de çalışıyor mu?
 
Katılım
3 Nisan 2014
Mesajlar
395
Excel Vers. ve Dili
Excel 2019 - Türkçe
Altın Üyelik Bitiş Tarihi
14-04-2021
Sayın rabbace teşekkür ederim.
Ancak kodda hata alıyorum. Sanıyorum merkez bankasının eski sitesi için çalışıyor.
Siz de çalışıyor mu?
Bende sorunsuz olarak çalışıyor, Sn. Ömer BARAN'ın paylaştığı linkte aynı kodların bulunduğu dosya var, oradan indirip kullanabilirsiniz.
 
Katılım
29 Ekim 2016
Mesajlar
9
Excel Vers. ve Dili
Microsoft Office 365 Business
Altın Üyelik Bitiş Tarihi
03-02-2023
Eklentide paylaştım.
 

Ekli dosyalar

Katılım
6 Temmuz 2015
Mesajlar
55
Excel Vers. ve Dili
Office 2016
Sayın rabbace kodu çalıştırdım teşekkür ederim.
Modüle eklemediğim için çalışmadı.
Teşekkürler yeniden.
 
Katılım
10 Ocak 2016
Mesajlar
36
Excel Vers. ve Dili
Office 2019
Altın Üyelik Bitiş Tarihi
06-05-2021
Sayın @rabbace ,

Son 20 gündür "webdöviz" makrosu çalışmıyor bu neden olabilir ?
 
Katılım
14 Temmuz 2020
Mesajlar
38
Excel Vers. ve Dili
Acemi
Altın Üyelik Bitiş Tarihi
07-01-2024
Sayın @@rabbace ,

Dosyanızdaki kodlar revize edilmiştir.

Saygılarımla,
Ömer Ali ÜZÜMCÜ
Merhabalar öncelikle teşekkür ederim dosya çok işime yaradı kendime göre revize ettim ve kullanıyordum kur sayfasına hiç karışmamama rağmen şuan hata alıyorum yardımcı olabilirmisiniz

Bir de eğer mümkün ise bir talebim olacak excel açılınca tarih girmek yerine bugün tarihi otomatik gelsin ve listele demeden günlük kuru güncellesin bu mümkünmüdür
 

Ekli dosyalar

Katılım
14 Temmuz 2020
Mesajlar
38
Excel Vers. ve Dili
Acemi
Altın Üyelik Bitiş Tarihi
07-01-2024
Arkadaşlar konu hakkında desteginizi bekliyorum
 
Üst