Webde seçim yada tıklama sorunu

Kısa Açıklama

Webde seçim yada tıklama sorunu isimli başlıkta, ilgili işlemlere dair detaylar yer almaktadır.
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
dom..
<td tabindex="0" class="x-grid3-col x-grid3-cell x-grid3-td-rumuz " style="width: 98px;"><div class="x-grid3-cell-inner x-grid3-col-rumuz" unselectable="on">TR-A</div></td>

daha uzunu
Ekran görüntüsü 2021-11-24 164222.webp
https://www.exceldepo.com/attachments/ekran-goeruentuesue-2021-11-24-164222-png.232041/


selenium ile aşağıdaki kod ile tıkladığım yere ie de tıklayamıyorum.

'.FindElementByXPath("//div[text()='TR-A']").Click
' Sleep 1000



gibi bisürü şey denedim olmadı.
Do While i < objCollection.Length
If Left(objCollection(i).innerText, 4) = "tr-a" Then
'FnWait (2)
Sleep 1000
objCollection(i).Click
Exit Do

'If InStr(IE.Document.body.innerText, "tr-a") = 0 Then
'SendKeys "{ENTER}", True
'Sleep 5000
'SendKeys "{numlock}", True



eyt olarak yaşlandık artık. bilgi işlem geldi sildi selenium falan. kaldım sadece vba ile ie'ye...
 
Moderatörün son düzenlenenleri:
Selenium yoksa işiniz zor.. bu işler birazda deneme-yanılma ile oluyor.. Bu hangi sistemin web arayüzü? IBM ile ilgisi var mı?

Şunu deneyiniz, kod hatalı olabilir kendim deneyemiyorum, buna benzer birşey yapmanız lazım.

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(4 satır)
 
cevap için teşekkürler.
onlarca sitede yabancı siteler de dahil- altın süper hiper vip üyeliklerim de var ama hiç birinden 1 tek yorum yada cevap dahi alamadım..
buraya da yeni üye oldum.
aslında sistemimin büyük kısmı html sitesinden yapılıyor ve çalışıyor.
sadece küçük bazı günlük girişileri yapmak için bu java htm vs karışık (iWorkBetter altyapısı) sayfayı kullanmak zorunda kalıyorum.
ve burada da bir çok seçim tıklama değer girme işlerini de yaptım zaten ama birden çok sayfa bölümünden oluşan yapıda diğer tabloyu seçip ona geçemiyorum.
bu verdiğiniz öneriyi de denedim ancak maalesef onda da yapamıyor işlemi. zaten aslında
If Left(objCollection(i).innerText, 4) = "tr-a" Then
bu kodlarda benzer işleri yapıyorlar ama ie11 geliştirici sayfasında bile nasıl oluyorsa TR-A aratınca dom'da onu da bulmuyor ikinci aramada buluyor falan.

bu kodlar çalışıyor tıklıyor..

IE.Document.getElementsByClassName("x-tree-node-anchor")(0).Click
Sleep 1000
IE.Document.getElementsByClassName("x-tree-node-anchor")(1).Click
Sleep 1000
IE.Document.getElementsByClassName("x-tree-node-anchor")(2).Click
Sleep 3000

aynı şekilde.

IE.Document.getElementsByClassName("btn_add_tpi")(1).Click
Sleep 2000
With IE.Document
.all("yag_sicaklik").Value = Application.Worksheets("oys").Range("q3").Value
Sleep 1000
.all("sargi_sicaklik").Value = Application.Worksheets("oys").Range("r3").Value
Sleep 1000
' .all("x-form-text x-form-field").Value = "10:00:00"
' Sleep 1000
End With

bunlar da çalışıyor ama mesela

IE.Document.getElementsByClassName("x-grid3-cell-inner x-grid3-col-rumuz")(1).Click

bu kod istenileni yapmıyor..

<div class="x-grid3-cell-inner x-grid3-col-rumuz" unselectable="on">TR-A</div>

unselectable neden oluyor olabilir diye öznitelik değiştirme falan da denedim ama.. maalesef.
 
Web'den veri çekmek uzmanlık alanımız lakin veri göndermekte başka bir uzmanlık gerektiriyor. Tıklamaya çalıştınığız eleman gerçek bir mouse tıklaması bekliyor olabilir. Bunun için ie.document.createevent ile önce sanal bir tıklama yaratmayı deneyebilirsiniz. Sistemi birebir tecrübe etmeden ilerlemek zor. Bu işlerde deneme yanılma önemli. ie.document.createevent ve webelement.dispatchevent yöntemlerini durumunuza uyarlamanız gerekir diye düşünüyorum.
 
ilgili site kapalıdevre yani aynı ağda çalışıyor. o yüzden siteyi versemde girmek mümkün değil. ayrıca şifreli giriş falan. zaten çoğunu hallettim ama çok küçük detaylar kaldı. dediğim gibi selenium ile
'.FindElementByXPath("//div[text()='TR-A']").Click
' Sleep 1000
bu kod ile tıklama yapabiliyordum ama bilgiişlem onu da kaldırdı.
aşağıdaki sitede daha ayrıntılı bilgi ile yabancı sitelere dahi sormuştum..
excel vba ile iWorkBetter altyapısı kullanılan bir sitede seçim işlemi yapmak..
 
<div class="x-grid3-cell-inner x-grid3-col-1" unselectable="on" id="ext-gen1189">&nbsp;</div>
baglan.FindElementByXPath("//div[@class='x-grid3-cell-inner x-grid3-col-1']").ClickDouble
baglan.Wait 5000
baglan.SendKeys "12"
.ClickDouble ' olarak yaparsanız
baglan.SendKeys "123456" ' ile veri gönderebilirsiniz.
 
Geri
Üst