• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Web içinde açılan yeni sayfa

  • Konbuyu başlatan Konbuyu başlatan Kusta
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Kasım 2018
Mesajlar
94
Excel Vers. ve Dili
2016
Aşağıdaki kodla portala bağlanıyorum. Sonra bir yerde seç işlemine tıklıyorum ve sayfanın içinde küçük yeni bir sayfa açıyor. Oraya işyerinin numarsını girip seçtikten sonra o sayfayı kapatıyor ve tekrar eski sayfaya dönerek işyerini gösteriyor. Ancak kırmızı ile belirttiğim yerde yani küçük sayfa açıldıktan sonraki yere ben "A" sütunundaki işyeri numarasını yaz komutu verdiğim halde işlemi gerçekleştirmiyor ve hata alıyorum. kaç gündür uğraşıyorum fakat çözemedim.
Yardımcı olabilir misiniz?

Sub Arama()
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "http://portalint..........................rupYonetimi.aspx"
IE.Width = 1500
IE.Height = 1000
IE.Visible = True
While IE.Busy
DoEvents
Wend

son = Cells(Rows.Count, "A").End(3).Row
For i = 2 To son
If Cells(i, "A") = "" Then
Cells(i, "D") = "İşyeri numarası gir!!!"
Else
Set TrackID = IE.document.getElementById("ctl02_ctlIsverenSec_link")
IE.document.getElementById("ctl02_ctlIsverenSec_link").Click
IE.Visible = True
While IE.Busy
DoEvents
Wend
IE.document.getElementById("ctl02_ctlCriteriaControl_NO").Value = Cells(i, "A")
IE.Visible = True
While IE.Busy
DoEvents

Wend
Set TrackID = IE.document.getElementById("ctl02_ctlPageCommand_CommandItem_Search")
IE.document.getElementById("ctl02_ctlPageCommand_CommandItem_Search").Click
IE.Visible = True
While IE.Busy
DoEvents
Wend
Set TrackID = IE.document.getElementById("ctl02_ctlDataGrid_ctl02_ctlSelect")
IE.document.getElementById("ctl02_ctlDataGrid_ctl02_ctlSelect").Click
IE.Visible = True
While IE.Busy
DoEvents
Wend

IE.document.getElementById("ctl02_ctlGrupIsyeriTransfer").Value = "1"
IE.Visible = True
While IE.Busy
DoEvents
Wend

Set TrackID = IE.document.getElementById("ctl02_ctlIsyeriCommand_CommandItem_Grupatama")
IE.document.getElementById("ctl02_ctlIsyeriCommand_CommandItem_Grupatama").Click
IE.Visible = True
While IE.Busy
DoEvents
Wend

IE.Visible = True
While IE.Busy
DoEvents
Wend
End If
Next
IE.Quit
End Sub
 
bu kodlar daha önceden çalıştırdığınız kodlar mı? eğer öyle ise büyük ihtimal tasarımdaki ctl02_ctlCriteriaControl_NO isimli kutunun adı değişmiş olabilir. Portaldan bu kutunun bulunduğu sayfayı açın ve üzerine sağ tıkalyıp ÖĞEYİ DENETLE (İnternet Explorer da) diyerek isminin ne olduğuna bakın.
 
bu kodlar daha önceden çalıştırdığınız kodlar mı? eğer öyle ise büyük ihtimal tasarımdaki ctl02_ctlCriteriaControl_NO isimli kutunun adı değişmiş olabilir. Portaldan bu kutunun bulunduğu sayfayı açın ve üzerine sağ tıkalyıp ÖĞEYİ DENETLE (İnternet Explorer da) diyerek isminin ne olduğuna bakın.
Yok daha önce çalıştığım kod değil. Yeni yaptım. Kod güncel yani.
Şüphelendiğim durum seç butonuna tıkladığımda web sayfasın içnde yeni bi kutu açılıyor ve oraya yazılıyor. yeni bi kutu olduğu için onu mu tanıtmak lazım acaba.
Şöyle düşünün bi siteye girdiniz giriş butonu var. ona tıkladığımızda bizden kullanıcı adı ve şifre girmemiz için yeni bi sayfa açıyor. oraya bilgileri girip tamam deyince o sayfa kapanıyor ve siteye kullanıcı adıyla giriş sağlamış oluyoruz. Anlatabilmişimdir inşallah.
 
"yeni bi kutu olduğu için onu mu tanıtmak lazım acaba. " sıkıntının sebebi bu olabilir.
 
Acilan sayfa eğer friev ise onun içerisinde textbox içerisine veri girmeniz gerek. Yok eğer açılan sayfadaki textboxların id ve classname leri vb varsa onunla da değer girilebilir. Sayfayı görmeden yorum yapılamıyor malesef.
 
Acilan sayfa eğer friev ise onun içerisinde textbox içerisine veri girmeniz gerek. Yok eğer açılan sayfadaki textboxların id ve classname leri vb varsa onunla da değer girilebilir. Sayfayı görmeden yorum yapılamıyor malesef.
Malesef tanıtamıyorum bir yerde yanlış yapıyorum ancak bulamadım.Bununla ilgili başka örnek kod varsa yada textboxların id ve classname lerden yola çıkarak ne yazmam gerektiği ile ilgili açıklayabilirseniz ben kendi formülüme uygularım onu.
 
Geri
Üst