Skip to main content

AccessTr.neT


Tarihe göre döviz kuru almaya koşul ekleme

Tarihe göre döviz kuru almaya koşul ekleme

#4
Kodu aşağıdaki ile değiştirerek deneyiniz.

Sub KurAl()
On Error GoTo hata
Dim xmldoc, DovizListesi, Dovizler As Object
Dim SorguTarihi As Date
Dim HaftaSonu, GDoviz, GDovizCins As String

Set xmldoc = CreateObject("Msxml.DOMDocument")
xmldoc.async = False

SorguTarihi = Me.tofatura_tarihi

HaftaSonu = Weekday(tofatura_tarihi, vbMonday)

    If HaftaSonu = 7 Then
       SorguTarihi = DateAdd("d", -2, SorguTarihi)
    ElseIf HaftaSonu = 6 Then
       SorguTarihi = DateAdd("d", -1, SorguTarihi)
    End If

xmldoc.Load "http://www.tcmb.gov.tr/kurlar/" & Format(SorguTarihi, "yyyymm") & "/" & Format(SorguTarihi, "ddmmyyyy") & ".xml"
Set DovizListesi = xmldoc.documentElement.selectNodes("Currency")

    GDoviz = Me.tofatura_doviztip
        If GDoviz = "€" Then
         GDovizCins = "EURO"
        ElseIf GDoviz = "$" Then
         GDovizCins = "ABD DOLARI"
        End If

        For Each Dovizler In DovizListesi
            If Eval("'" & Dovizler.SelectSingleNode("Isim").Text & "' In('" & GDovizCins & "')") Then
              Me.tofatura_kur = Replace(Dovizler.SelectSingleNode("ForexSelling").Text, ".", ",")
            End If
        Next
   
hata:

If Err.Number = "91" Then
    If MsgBox(" " & DateAdd("d", -3, Me.tofatura_tarihi) & " tarihine ait veri alınsın mı", vbYesNo) = vbYes Then
    
    SorguTarihi = DateAdd("d", -3, Me.tofatura_tarihi)
    HaftaSonu = Weekday(tofatura_tarihi, vbMonday)
    
        If HaftaSonu = 7 Then
           SorguTarihi = DateAdd("d", -2, SorguTarihi)
        ElseIf HaftaSonu = 6 Then
           SorguTarihi = DateAdd("d", -1, SorguTarihi)
        End If
    
    xmldoc.Load "http://www.tcmb.gov.tr/kurlar/" & Format(SorguTarihi, "yyyymm") & "/" & Format(SorguTarihi, "ddmmyyyy") & ".xml"
    Set DovizListesi = xmldoc.documentElement.selectNodes("Currency")
    
        GDoviz = Me.tofatura_doviztip
            If GDoviz = "€" Then
             GDovizCins = "EURO"
            ElseIf GDoviz = "$" Then
             GDovizCins = "ABD DOLARI"
            End If
    
            For Each Dovizler In DovizListesi
                If Eval("'" & Dovizler.SelectSingleNode("Isim").Text & "' In('" & GDovizCins & "')") Then
                  Me.tofatura_kur = Replace(Dovizler.SelectSingleNode("ForexSelling").Text, ".", ",")
                End If
            Next
    End If
End If
Set xmldoc = Nothing
End Sub
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Cvp: Tarihe göre döviz kuru almaya koşul ekleme - Yazar: ozanakkaya - 20/06/2016, 01:08
Task