- Katılım
- 13 Kasım 2018
- Mesajlar
- 27
- Excel Vers. ve Dili
- MS Excel 365
- Altın Üyelik Bitiş Tarihi
- 04-09-2021
Merhabalar,
Aşağıdaki gibi döviz alış, satış, kar, zarar takip edebileceğim bir tablom var. B2, B3, B4 ve B5 hücrelerindeki verileri makro ile çalıştığım bankanın (enpara) sitesinden oluşturduğum klavye kısayolu ile çekiyorum.
Fakat iki problemim var:
İlk problemim:
Makro her çalıştırıldığında arka planda internet explorer ile dış kaynaktan veri alınıyor, dolayısıyla her sorgu için CPU 1 adet iexplorer.exe işlemi oluşturuluyor.
Sorgu sayısı 14-15 taneyi geçtiğinde makro çalışamaz duruma geliyor dolayısıyla CPU'dan bu biriken internet explorer işlemlerini el ile sonlandırmak durumunda kalıyorum.
Bunun önüne geçebileceğim bir çözüm var mıdır? Internet Explorer yerine farklı bir tarayıcıya atayamaz mıyım bu makrodaki sorguyu?
Makro burada:
İkinci problemim ise:
Bu sorguyu el ile değil de otomatik olarak nasıl çalıştırabilirim? Dakikada bir arka planda kendisi yenileyecek şekilde. Tabii bunun için ilk maddedeki sorunumun çözülmesi gerekiyor.
Yardımlarınızı bekliyorum. İyi forumlar.
Aşağıdaki gibi döviz alış, satış, kar, zarar takip edebileceğim bir tablom var. B2, B3, B4 ve B5 hücrelerindeki verileri makro ile çalıştığım bankanın (enpara) sitesinden oluşturduğum klavye kısayolu ile çekiyorum.
Fakat iki problemim var:
İlk problemim:
Makro her çalıştırıldığında arka planda internet explorer ile dış kaynaktan veri alınıyor, dolayısıyla her sorgu için CPU 1 adet iexplorer.exe işlemi oluşturuluyor.
Sorgu sayısı 14-15 taneyi geçtiğinde makro çalışamaz duruma geliyor dolayısıyla CPU'dan bu biriken internet explorer işlemlerini el ile sonlandırmak durumunda kalıyorum.
Bunun önüne geçebileceğim bir çözüm var mıdır? Internet Explorer yerine farklı bir tarayıcıya atayamaz mıyım bu makrodaki sorguyu?
Makro burada:
Kod:
Sub Yenile()
Application.ScreenUpdating = False
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "http://www.qnbfinansbank.enpara.com/doviz-kur-bilgileri/doviz-altin-kurlari.aspx"
Do: DoEvents: Loop Until IE.ReadyState = 4
KurAlis = IE.document.getElementsByClassName("dlCont")(1).innerText
KurSatis = IE.document.getElementsByClassName("dlCont")(2).innerText
ActiveSheet.Range("B3").Value = KurAlis
ActiveSheet.Range("B2").Value = KurSatis
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "http://www.qnbfinansbank.enpara.com/doviz-kur-bilgileri/doviz-altin-kurlari.aspx"
Do: DoEvents: Loop Until IE.ReadyState = 4
KurAlis = IE.document.getElementsByClassName("dlCont")(4).innerText
KurSatis = IE.document.getElementsByClassName("dlCont")(5).innerText
ActiveSheet.Range("B5").Value = KurAlis
ActiveSheet.Range("B4").Value = KurSatis
IE.Navigate "http://www.qnbfinansbank.enpara.com/doviz-kur-bilgileri/doviz-altin-kurlari.aspx"
End Sub
İkinci problemim ise:
Bu sorguyu el ile değil de otomatik olarak nasıl çalıştırabilirim? Dakikada bir arka planda kendisi yenileyecek şekilde. Tabii bunun için ilk maddedeki sorunumun çözülmesi gerekiyor.
Yardımlarınızı bekliyorum. İyi forumlar.