'u kullanarak bir web sayfasındaki bir düğmeyi bulup ona basmalıyım Bir web sayfası açacak, verileri yerleştirmem gereken noktaları bulabildiğim bir makro yazdım ve makroun bir önceden doldurma düğmesine basmasını istiyorum. sonra Tamam'a basın. Bütün hafta cevap ararken oldumVBA
<input type="text" size="30" maxlength="40" name="name" id="name">
<input type="button" value="Prefill" onclick="prefill()">
ve ben aramak için döngü çalıştırarak işe bu beklenir nasıl temel bir anlayış var düşünüyorum:
düğmesi için sayfa kaynak kodu Bunun için, ama aslında bunu işe almak için çabalarımda hiç şansım yok.
Birisi bu düğüme sayfamı arayacak döngüyü gösterebilir mi?
Önceden teşekkür ederiz. Eğer oldukça yakın olduğu gibi
Talep edilen kod şimdiye kadar
Private Sub Populate_Click()
Dim i As Long
Dim IE As Object
Dim objElement As Object
Dim objCollection As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate "website" 'make sure you've logged into the page
Do
DoEvents
Loop Until IE.READYSTATE = 3
Do
DoEvents
Loop Until IE.READYSTATE = 4
ActiveSheet.EnableCalculation = False
ActiveSheet.EnableCalculation = True
Call IE.document.getelementbyid("name").SetAttribute("value", ActiveSheet.Range("b2").Value)
Call IE.document.getelementbyid("aw_login").SetAttribute("value", ActiveSheet.Range("a2").Value)
Set objCollection = IE.document.getElementsByTagName("input")
i = 0
While i < objCollection.Length
If objCollection(i).Type = "button" And _
objCollection(i).Name = "Prefill" Then
Set objElement = objCollection(i)
End If
i = i + 1
Wend
objElement.Click
End Sub
atıfta fark? – sigil
VBA bir yabancı için bir işlev için kullanılabilir eğer merak ediyorum, bu yüzden ben ayarlı kalacağım. Muhtemelen 'macros' etiketini kaldırabilir ve hangi Office sürümünü kullandığınızı söylemek isteyebilirsiniz. – Smandoli
winAPI kullanarak pencerenizi bulup bir tıklama gönderin –