Web Sitesinden Veri Çekmek

bluefalcon

Altın Üye
Altın Üye
Katılım
22 Aralık 2005
Mesajlar
325
Beğeniler
0
Excel Vers. ve Dili
Excel 2013 EN 64Bit
#1
Arkadaşlar herkese selamlar,

Shell internet sayfasından veri çekmeye çabalıyorum. Parola ve kullanıcı adını soran sayfayı geçtikten sonra aşağıdaki kodlar ile iki combobox dan biri olan Başlangıç Tarihi ve diğeri olan Bitiş Tarihi alanlarına inputboxlar ile değer aktarıyorum. Ara butonu tıklandığında ise sanki sitedeki başlangıç ve bitiş tarihleri kutuları boşmuş gibi "Islem Tarihini Seciniz" uyarısı geliyor. Manuel müdahale ettiğimde ise veriyi gösteriyor. Bunun sebebi konusunda fikirlerinizi paylaşabilirseniz çok memnun olurum;


bas = InputBox("baslangic tarihi", "BASLANGIC")
bit = InputBox("bitis tarihi", "BITIS")
With CreateObject("InternetExplorer.Application")
.Visible = True
.navigate "https://tts.turkiyeshell.com/Reports/RptFleet.aspx"
.document.all.MainContent_dtIslemTarihiBsl_I.Value = bas
.document.all.MainContent_dtIslemTarihiBts_I.Value = bit
.document.all.MainContent_btnSearch_CD.Click
End With
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
2,752
Beğeniler
229
Excel Vers. ve Dili
2007 Türkçe
#2
Merhaba,
Öncelikle şunu belirteyim; siteyi görmeden yazdığım için yönlendirmem doğru olmayabilir. Ancak veriyi comboboxa giriyorsanız onchange olayı olabilir, veri girdikten sonra onu çalıştırmanız gerekir. .document.all.MainContent_dtIslemTarihiBsl_I.OnChange şeklinde deneyiniz. Bir de bundan sonra bekleme eklemeniz gerekebilir.
 

bluefalcon

Altın Üye
Altın Üye
Katılım
22 Aralık 2005
Mesajlar
325
Beğeniler
0
Excel Vers. ve Dili
Excel 2013 EN 64Bit
#3
Ömer Bey yanıtınız için teşekkür ederim. Şu şekilde denedim aynı hatayı aldım, farklı bir yöntemle mi denemeliydim acaba?

Kod:
        .document.all.MainContent_dtIslemTarihiBsl_I.Value = bas
        .document.all.MainContent_dtIslemTarihiBsl_I.onchange = bas
        
        .document.all.MainContent_dtIslemTarihiBts_I.Value = bit
        .document.all.MainContent_dtIslemTarihiBts_I.onchange = bit
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
2,752
Beğeniler
229
Excel Vers. ve Dili
2007 Türkçe
#4
= bas kısmı olmayacak, sadece .document.all.MainContent_dtIslemTarihiBsl_I.onchange

Bir de şöyle deneyiniz:
Kod:
.document.all.MainContent_dtIslemTarihiBsl_I.Value = bas
.document.all.MainContent_dtIslemTarihiBsl_I.onchange
Application.Wait Now + TimeValue("0:0:2")
.document.all.MainContent_dtIslemTarihiBts_I.Value = bit
.document.all.MainContent_dtIslemTarihiBts_I.onchange
Application.Wait Now + TimeValue("0:0:2")
.document.all.MainContent_btnSearch_CD.Click
 

bluefalcon

Altın Üye
Altın Üye
Katılım
22 Aralık 2005
Mesajlar
325
Beğeniler
0
Excel Vers. ve Dili
Excel 2013 EN 64Bit
#5
Ömer Bey çok teşekkür ederim elleriniz dert görmesin önerdiğiniz şekilde denedim ve oldu. Şimdi sıra döngüyü hazırlamakta. Tekrar teşekkür ediyorum.
 
Üst