AccessTr.neT
Access Form Kullanmadan Döviz Kuru Alma - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Access Form Kullanmadan Döviz Kuru Alma (/konu-access-form-kullanmadan-doviz-kuru-alma.html)

Sayfalar: 1 2 3 4


RE: Access Form Kullanmadan Döviz Kuru Alma - kanakan52 - 06/05/2020

(06/05/2020, 15:32)berduş yazdı: buton kodlarını aşağıdaki kodla değiştirip dener misiniz? böyle daha hızlı oldu sanki
Dim Adrs As String
Dim ParaBirim As String
SorguTarihi = CDate(Me.TxtTrh.Value)

Set xmldoc = CreateObject("Msxml.DOMDocument")
    Dim DovizListesi, Dovizler As Object
    xmldoc.async = False


If SorguTarihi <> Date Then

Adrs = "http://www.tcmb.gov.tr/kurlar/" & CStr(Format(SorguTarihi, "yyyymm") & "/" & Format(SorguTarihi, "ddmmyyyy")) & ".xml"
   
Else

Adrs = "http://www.tcmb.gov.tr/kurlar/today.xml"
           
End If
If URLExists(Adrs) = False Then
    MsgBox "bu tarihe ait kayıt yok"
    Exit Sub
End If
xmldoc.Load Adrs
Set DovizListesi = xmldoc.DocumentElement.SelectNodes("Currency")
On Error Resume Next

Set baglan = CreateObject("adodb.connection")
baglan.Open "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.Path & "\Döviz.accdb"

For Each Dovizler In DovizListesi
        If Len(Dovizler.SelectSingleNode("BanknoteBuying").Text & "") = 0 Or Len(Dovizler.SelectSingleNode("BanknoteSelling").Text & "") = 0 Then
        Exit For
        End If
ParaBirim = Dovizler.SelectSingleNode("CurrencyName").Text

Select Case ParaBirim

   Case "US DOLLAR"
      txtDövizAdi = "USD"
   Case "AUSTRALIAN DOLLAR"
      txtDövizAdi = "AUD"
   Case "DANISH KRONE"
      txtDövizAdi = "DKK"
   Case "EURO"
      txtDövizAdi = "EUR"
   Case "POUND STERLING"
      txtDövizAdi = "GBP"
   Case "SWISS FRANK"
      txtDövizAdi = "CHF"
   Case "SWEDISH KRONA"
      txtDövizAdi = "SEK"
   Case "CANADIAN DOLLAR"
      txtDövizAdi = "CAD"
   Case "KUWAITI DINAR"
      txtDövizAdi = "KWD"
   Case "NORWEGIAN KRONE"
      txtDövizAdi = "NOK"
   Case "SAUDI RIYAL"
      txtDövizAdi = "SAR"
   Case "JAPENESE YEN"
      txtDövizAdi = "JPY"

End Select

SqlEkle = " INSERT INTO [Döviz] ([VeriTrh], DövizCinsi, DövizAdi, [DövizAlis], [DövizSatis],[EfektifAlis],[EfektifSatis]) " & _
          " VALUES (" & CLng(SorguTarihi) & ",'" & txtDövizAdi & "','" & _
            Dovizler.SelectSingleNode("Isim").Text & "'," & _
            Dovizler.SelectSingleNode("ForexBuying").Text & ", " & _
            Dovizler.SelectSingleNode("ForexSelling").Text & "," & _
            Dovizler.SelectSingleNode("BanknoteBuying").Text & "," & _
            Dovizler.SelectSingleNode("BanknoteSelling").Text & ")"

baglan.Execute SqlEkle
       
Next
Set xmldoc = Nothing
Hocam, saygılarımı sunuyorum.. Img-grin) deneme yaptım daha hızlı gerçekten, listview' e nasıl alabilirim?


RE: Access Form Kullanmadan Döviz Kuru Alma - berduş - 06/05/2020

listviewi hiç kullanmadım o nedenle tam olarak bilmiyorum, araştırmam gerek.
ama neden listbox değil de listview? sonuçta siz sadece belli bir günün verilerini getirmeyecek misiniz?
Ayrıca zaten @feraz hocam 8. mesajda listviewe veri eklemeyi göstermiş.


RE: Access Form Kullanmadan Döviz Kuru Alma - kanakan52 - 06/05/2020

(06/05/2020, 15:51)berduş yazdı: listviewi hiç kullanmadım o nedenle tam olarak bilmiyorum, araştırmam gerek.
ama neden listbox değil de listview? sonuçta siz sadece belli bir günün verilerini getirmeyecek misiniz?
Ayrıca zaten @feraz hocam 8. mesajda listviewe veri eklemeyi göstermiş.

Hocam listviewde başlık ekleme satır sütun çizgileri gibi  satır renklendirme gibi özellikler var,

Listview kısmını ben hallediyorum, çok çok teşekkür ederim.


RE: Access Form Kullanmadan Döviz Kuru Alma - alicimri - 08/05/2020

Excel'den Accees Dosyasının İçindeki Kodu Çalıştırarak Döviz Kurlarını Almak

Sayın #kanakan52 Yukardaki link e eklediğim dosya işinize yarayabilir