ATEMİ
Altın Üye
- Katılım
- 9 Ocak 2006
- Mesajlar
- 358
- Excel Vers. ve Dili
- Office 365 Türkçe
- Altın Üyelik Bitiş Tarihi
- 25-06-2026
Merhaba,
TCMB den veri çekmek için aşağıdaki gibi bir kod buldum ve aynı çalışma sayfası içinde ikinci bir sayfaya kopya ederek uyarladım.
Sorunsuz çalıştı ta ki sayfayı korumaya alana kadar. şöyle bir hata verdi;
Run-time error '1004'
Değiştirmeye çalıştığınız hücre ya da grafik korumalı sayfada.
Değişiklik yapmak için sayfanın korumasını kaldırın. parola girmeniz istenebilir.
Sub PEAKUP_TCMB_TUM_KURLAR()
Dim xml As Object, adres As String, tablom As Object, sat As Byte
Range("A2:G22") = ""
Set xml = CreateObject("MSXML2.DOMDocument")
xml.async = False
xml.validateOnParse = False
adres = "https://www.tcmb.gov.tr/kurlar/today.xml"
xml.Load adres
Set tablom = xml.SelectNodes("//Currency[CurrencyName='EURO' or CurrencyName='USD']")
Set tablom = xml.SelectNodes("//Currency")
If tablom.Length = 0 Then GoTo cik:
sat = tablom.Length - 1
For i = 0 To sat
Cells(i + 2, 1) = tablom(i).ChildNodes(1).Text
Cells(i + 2, 2) = tablom(i).ChildNodes(3).Text
Cells(i + 2, 3) = tablom(i).ChildNodes(4).Text
Cells(i + 2, 4) = tablom(i).ChildNodes(5).Text
Cells(i + 2, 5) = tablom(i).ChildNodes(6).Text
Next
cik:
Set tablom = Nothing: Set xml = Nothing: adres = vbNullString: sat = Empty
End Sub
TCMB den veri çekmek için aşağıdaki gibi bir kod buldum ve aynı çalışma sayfası içinde ikinci bir sayfaya kopya ederek uyarladım.
Sorunsuz çalıştı ta ki sayfayı korumaya alana kadar. şöyle bir hata verdi;
Run-time error '1004'
Değiştirmeye çalıştığınız hücre ya da grafik korumalı sayfada.
Değişiklik yapmak için sayfanın korumasını kaldırın. parola girmeniz istenebilir.
Sub PEAKUP_TCMB_TUM_KURLAR()
Dim xml As Object, adres As String, tablom As Object, sat As Byte
Range("A2:G22") = ""
Set xml = CreateObject("MSXML2.DOMDocument")
xml.async = False
xml.validateOnParse = False
adres = "https://www.tcmb.gov.tr/kurlar/today.xml"
xml.Load adres
Set tablom = xml.SelectNodes("//Currency[CurrencyName='EURO' or CurrencyName='USD']")
Set tablom = xml.SelectNodes("//Currency")
If tablom.Length = 0 Then GoTo cik:
sat = tablom.Length - 1
For i = 0 To sat
Cells(i + 2, 1) = tablom(i).ChildNodes(1).Text
Cells(i + 2, 2) = tablom(i).ChildNodes(3).Text
Cells(i + 2, 3) = tablom(i).ChildNodes(4).Text
Cells(i + 2, 4) = tablom(i).ChildNodes(5).Text
Cells(i + 2, 5) = tablom(i).ChildNodes(6).Text
Next
cik:
Set tablom = Nothing: Set xml = Nothing: adres = vbNullString: sat = Empty
End Sub