Excel Bitcoin - Excel JSON ile Dinamik Veri - microsoft bitcoin - bitcoin microsoft

Microsoft Excel'de Dinamik Olarak Anlık Bitcoin Değerlerine Ulaşmak (JSON ile)

Genel Açıklama:

Bu derste dinamik yani otomatik olarak dolar ve TL cinsinden anlık bitcoin değerlerini nasıl Microsoft Excel çalışma sayfamıza yükleyebileceğimiz anlatılmaktadır. Kısacası bu derste microsoft bitcoin kavramlarının nasıl yanyana gelmesi açıklanmaya çalışılacaktır.


Bu işlemi yapmak için öncelikle birçok kur cinsinden bitcoin değerlerini anlık olarak üreten bir web sitesinden değerleri alacağız. Daha sonra bu web sitesinin JSON formatında oluşturduğu sonuçları excel çalışma sayfamızda makro kod yazarak okutacağız.



Ders Videoları





Excel Çalışma Dosyasının Hazırlanması

İşlemlerimize başlamadan önce ilk yapmamız gereken Microsoft Excel çalışma dosyamızın hazırlanmasıdır. Varsayılan olarak excel çalışma dosyamız JSON sonuçlarını çözümleyecek kütüphaneye sahip değildir. Dolayısıyla ilk önce bu kütüphanenin excel çalışma dosyamıza dahil edilmesi gerekmektedir.


Aşağıdaki resimlerden görüleceği üzere ilk önce EXCEL VBA - JSON v2.2.3 kütüphanesini bilgisayarımıza indiriyoruz. Daha sonra bu dosyayı excel çalışma kitabımıza IMPORT ediyoruz. (Aşağıda yer alan birinci foto yada çalışma videolarında detaylı bir şekilde anlatılmaktadır.)


IMPORT işlemini yaptıktan sonra yapmamız gereken son işlemde excel çalışma sayfamıza MICROSOFT SCRIPTING RUNTIME referansını eklemeiz gerekmektedir.


TOOLS --> REFERENCES --> MICROSOFT SCRIPTING RUNTIME



BITCOIN DEĞERLERİNİ JSON FORMATINDA ALMAK

COIN - DESK sitesi anlık olarak BITCOIN indeks değerlerini JSON formatında üreten bir sitedir.Burada anlık BITCOIN değerlerinin yanında tarihsel veriler olsun yada farklı kurlara göre BITCOIN değerleri bulunmaktadır. Örneğin siz sadece TR cinsinden değilde aynı zamanda hem EURO hemde DOLAR cinsinden de BITCOIN değerlerine ulaşabilirsiniz. Aşağıda hem bugünkü hem bir önceki günkü hemde dolar cinsinden BITCOIN değerlerine ulaşabileceğiniz linkleri paylaşıyorum.


https://api.coindesk.com/v1/bpi/currentprice.json

https://api.coindesk.com/v1/bpi/historical/close.json?for=yesterday

https://api.coindesk.com/v1/bpi/currentprice/TRY.json



ANLIK OLARAK ALDIĞIMIZ BITCOIN DEĞERLERİNİ EXCEL DOSYASINA YÜKLEMEK

Son aşamada ise JSON formatında ulaştığımız ve daha önceden gerekli kütüphaneyi yüklediğimiz excel çalışma dosyasına gerekli makro kodları ekleyerek sonuçları almak. Örnek çalışma dosyasının indirme linkini yukarıda da paylaştım. Ancak siz sıfırdan yeni açılmış bir dosya ile çalışmak isterseniz aşağıdaki makro kodları excel dosyanıza eklemeniz gerekmektedir.


      Sub getValues()
      todayBitcoin
      yesterdayBitcoin
      End Sub
      
      Private Function todayBitcoin()
      Dim httpObject As Object
      Set httpObject = CreateObject("MSXML2.XMLHTTP")
       
      Dim currentDate As String
      Dim TRYValue As String
      Dim USDValue As String
      Dim sGetResult As String
      
      sURL = "https://api.coindesk.com/v1/bpi/currentprice/TRY.json"
      
      sRequest = sURL
      httpObject.Open "GET", sRequest, False
      httpObject.send
      sGetResult = httpObject.ResponseText
       
      Dim oJSON As Object
      Set oJSON = JsonConverter.ParseJson(sGetResult)
      
      currentDate = oJSON("time")("updated")
      TRYValue = oJSON("bpi")("TRY")("rate_float")
      USDValue = oJSON("bpi")("USD")("rate_float")
      
      Worksheets(2).Range("C3").Value = currentDate
      Worksheets(2).Range("D3").Value = CDbl(USDValue)
      Worksheets(2).Range("E3").Value = CDbl(TRYValue)
      
      End Function
      
      Private Function yesterdayBitcoin()
      
      Dim httpObject As Object
      Set httpObject = CreateObject("MSXML2.XMLHTTP")
       
      Dim yesterday As String
      Dim USDValue As String
      Dim sGetResult As String
      Dim yesterday_date As String
      
      sURL = "https://api.coindesk.com/v1/bpi/historical/close.json?for=yesterday"
      yesterday_date = Date - 1
      yesterday_date = Format(yesterday_date, "yyyy-mm-dd")
      
      sRequest = sURL
      httpObject.Open "GET", sRequest, False
      httpObject.send
      sGetResult = httpObject.ResponseText
       
      Dim oJSON As Object
      Set oJSON = JsonConverter.ParseJson(sGetResult)
      
      yesterday = oJSON("time")("updated")
      USDValue = oJSON("bpi")(yesterday_date)
      
      Worksheets(2).Range("C4").Value = yesterday
      Worksheets(2).Range("D4").Value = CDbl(USDValue)
      
      End Function     
      





Hiç yorum yok:

Yorum Gönderme









Formül Nasıl Yazılır?

# İŞLEM
1 Çalışma sayfasında formülü girmek istediğiniz hücreyi seçin. (Örnek: A1)
2 = yada + tuşlarından birine basın.
3 Ardından sonucunu görmek istediğiniz formülü yazıp Enter tuşuna basın.


Formül Nasıl Yazılır (Hücre Aralığına)?

# İŞLEM
1 Çalışma sayfasında formülü girmek istediğiniz alanı seçin(Örn:A1:A5) .
2 = yada + tuşlarından birine basın.
3 Ardından sonucunu görmek istediğiniz formülü yazıp Ctrl + Shift + Enter tuş kombinasyonuna beraber basın.