İNTERNETTEN VERİ ÇEKME

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Ustalarım https://www.doviz.com/ isimli internet sitesinde üst taraftaki yatırım araçlarının anlık fiyatlarını ve değişim oranlarını
excel sayfamda ki ilgili hücrelere (her 15 dakikada bir güncellenecek şekilde) almak istiyorum. Yardımcı olabilir misiniz?
 

Ekli dosyalar

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Merhaba günaydın herkese sorunumu çözmeme yardımcı olabilir misiniz?
 

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Ben bir kişinin benim sıkıntıma yardım edeceğine eminim.
 
Katılım
20 Şubat 2012
Mesajlar
242
Excel Vers. ve Dili
office2007 Türkçe
Kod:
Sub Dongu()

Do
    Call Doviz
    Application.Wait (Now + TimeValue("0:15:00"))

Loop
End Sub
Sub Doviz()
On Error Resume Next
Dim IE

 Columns("A:A").Select
 Selection.ClearContents
 Range("A1").Select

   Set IE = CreateObject("InternetExplorer.Application")
   IE.navigate "https://www.doviz.com/"
   Do While IE.readyState <> READYSTATE_COMPLETE
    Application.StatusBar = "Loading website…"
    DoEvents
   Loop

sat = 1
For Each htmlElement In IE.document.getElementsByTagName("span")
 Range("A" & sat).Value = Replace(htmlElement.innerText, ",", ".")
 sat = sat + 1
Next
End Sub
 
Katılım
24 Nisan 2005
Mesajlar
3,652
Excel Vers. ve Dili
Office 2016 EN 64 Bit
Altın Üyelik Bitiş Tarihi
25/05/2022
Loop içinde DoEvents kullanılması yararlı olabilir.
 
Katılım
5 Ocak 2020
Mesajlar
73
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
22-02-2023
Ustalarım https://www.doviz.com/ isimli internet sitesinde üst taraftaki yatırım araçlarının anlık fiyatlarını ve değişim oranlarını
excel sayfamda ki ilgili hücrelere (her 15 dakikada bir güncellenecek şekilde) almak istiyorum. Yardımcı olabilir misiniz?
Yukardaki dosyanın doğru dosya olduğuna eminmisiniz? bana ilgisiz gibi geldi.
 

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Kod:
Sub Dongu()

Do
    Call Doviz
    Application.Wait (Now + TimeValue("0:15:00"))

Loop
End Sub
Sub Doviz()
On Error Resume Next
Dim IE

Columns("A:A").Select
Selection.ClearContents
Range("A1").Select

   Set IE = CreateObject("InternetExplorer.Application")
   IE.navigate "https://www.doviz.com/"
   Do While IE.readyState <> READYSTATE_COMPLETE
    Application.StatusBar = "Loading website…"
    DoEvents
   Loop

sat = 1
For Each htmlElement In IE.document.getElementsByTagName("span")
Range("A" & sat).Value = Replace(htmlElement.innerText, ",", ".")
sat = sat + 1
Next
End Sub

Sayın hocam yanlış dosya için özür dilerim. Doğrusu budur. Kodları u dosyaya yerleştireceğiz.
 

Ekli dosyalar

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Yukardaki dosyanın doğru dosya olduğuna eminmisiniz? bana ilgisiz gibi geldi.
Kesinlikle hatalı doya çok çok özür dilerim. doğrusunu yükledim. Gene hatalı dosya yüklediysem yapıştırın tokatı. Saygılar. Tekrar özür dilerim.
 

Ekli dosyalar

Katılım
5 Ocak 2020
Mesajlar
73
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
22-02-2023
Aşağıdaki dosyayı açınca, otomatik olarak 15 dakikada bir verileri alır.
Şimdi yenile butonuna tıklarsanız o an veri yenilenir.
Zaman aralığını değiştirmek isterseniz Thisworbook kısmındaki kodu, AutoTime = Now + TimeSerial(0, 15, 0) kısmındaki 15'i istediğiniz bir rakamla değiştirebilirsiniz.
Birde şu an piyasalar bitcoin hariç kapalı, açılınca sitedeki kodlar değişirmi bilmiyorum.
 

Ekli dosyalar

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Aşağıdaki dosyayı açınca, otomatik olarak 15 dakikada bir verileri alır.
Şimdi yenile butonuna tıklarsanız o an veri yenilenir.
Zaman aralığını değiştirmek isterseniz Thisworbook kısmındaki kodu, AutoTime = Now + TimeSerial(0, 15, 0) kısmındaki 15'i istediğiniz bir rakamla değiştirebilirsiniz.
Birde şu an piyasalar bitcoin hariç kapalı, açılınca sitedeki kodlar değişirmi bilmiyorum.
Ustam dolar ve euro ve sterlin değerleri hatalı gösteriyor.
Yatırım Aracı Fiyat %Değişim Fark
GRAM ALTIN 532,6 %0,59 3,13
DOLAR ₺92.945,00 %-0,39 -0,04 Normalde 9,2945 göstermesi gerekiyor
EURO 108.376 %-0,12 ( -₺0,01 ) Normalde 10,8376 göstermesi gerekiyor
STERLİN 128.240 %0,01 0 Normalde 12,8240 göstermesi gerekiyor
BIST 100 1,432 %1,02 14,45
BITCOIN $61.831,62 %0,09 $56,83
GÜMÜŞ 7,11 %2,23 0,16
FAİZ 18,47 %0,00 0
 
Son düzenleme:
Katılım
5 Ocak 2020
Mesajlar
73
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
22-02-2023
Merhaba, aslında verileri doğru alıyor ama nedense 9,2945 yerine 92.945 olarak gösteriyor yani noktalama hatası.
İlgili hücreleri metin olarak biçimlendirdim olay çözüldü.Dosya aşağıdadır
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
Verilerin "hızlı" ve "sayısal" olarak alındığı alternatif dosya ektedir....

.
 

Ekli dosyalar

Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
Verilerin "hızlı" ve "sayısal" olarak alındığı alternatif dosya ektedir....

.
Merhaba Haluk bey
Daha önce Altın Piyasa sayfası ile yaptığınız dosya çalışıyordu bu çalışmadı bende hata veriyor..
Gördüğüm kadariyle aradaki fark diğerinde "objHTTP" kullanmışsınız bunda "HTTP"
"objHTTP" ye göre uyarlamak mümkünmü.

İyi çalışmalar
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
Dosya çalışıyor, sıkıntı yok .... sizde verdiği hata mesajı nedir ve hangi satırda ?

.
 
Katılım
5 Ocak 2020
Mesajlar
73
Excel Vers. ve Dili
2007
Altın Üyelik Bitiş Tarihi
22-02-2023
Bendede sıkıntısız ve çok hızlı çalıştı.
 
Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
Dosya çalışıyor, sıkıntı yok .... sizde verdiği hata mesajı nedir ve hangi satırda ?

.
Merhaba
Ben IExplorer sebepli Securitiy HTTP yani HTTPS bağlantılarında uzun zamandır sıkıntı yaşıyorum
Bu sebepten başka Browser kullanıyorum. Çok uğraştım çözemedim. Hata büyük ihtimalle bu sebepten.
Aşağıdaki Dosyanızda bağlantı HTTP olduğundan problemsiz çalışıyor.

230995
 

Ekli dosyalar

yamahato

Altın Üye
Katılım
20 Mayıs 2009
Mesajlar
233
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
30-09-2026
Verilerin "hızlı" ve "sayısal" olarak alındığı alternatif dosya ektedir....

.
Sayın hocam bu dosyaya belirli zaman aralıklarında kendi kendini güncelleme yeteneği katabilir miyiz?
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
İşin o kısmını önceki mesajlarda belirtildiği gibi "OnTime" metodunu düzgün bir şekilde kullanarak halledebilirsiniz....

.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
Aşağıdaki yöntemle başka bir siteden yine benzer veriler alınabilmektedir.

Kodun içerisinde belirttiğim yerde, otomatik güncellemeyi yapabilirsiniz.

Örnek;

C#:
.RefreshPeriod = 15
Verileri ilk defasında aldıktan sonra, tablonun üzerinde sağ tıklayıp "Güncelle" menüsünü tıklarsanız, istediğiniz herhangibir an tablonuz güncellenir.


C#:
Sub Test()
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;https://www.bloomberght.com/finansal-teknoloji", Destination:=Range("$A$1"))
        .Name = "Piyasalar"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlOverwriteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
       
        'Otomatik güncelleme için aşağıdaki satıra dakika cinsinden değer yazın...
        .RefreshPeriod = 0
       
        .WebSelectionType = xlSpecifiedTables
        .WebTables = 1
       
        .WebFormatting = xlWebFormattingNone
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub

.
 
Son düzenleme:
Üst