2013-03-06 9 views
5

मैं एक खोज बॉक्स में एक पाठ दर्ज correcet आईडी टैग है के बाद मैं मैं क्या सोचता है जब के साथ कुछ समस्या हो रही है। मुझे पृष्ठ के स्रोत कोड से आईडी मिली है। मैंने इसे अन्य वेबसाइटों के साथ पहले किया है। क्या कोई व्यक्ति कृपा करके मेरी सहायता करेगा? क्या इसे करने का और कोई तरीका है?VBA - आईई getElementByID काम नहीं कर रहा

Sub FileUpload() 

Dim IEexp as Object 
IEexp.visible = True 
IEexp.Navigate ("www.example.com") 

'this is where the problem 
IEexp.Document.GetElementByID("step1_id_bean_newSupportingDoc_description").Value _ 
= "monthly update" 

End Sub 

मैं एक "स्वचालन त्रुटि वस्तु लागू अपने ग्राहकों से काट दिया गया है" मिल

स्रोत कोड मैं कहाँ से आईडी खींच लिया:

<td class="Label">Description</td> 
    <td class="Data"><input type="text" name="bean.newSupportingDoc.description" size="60" maxlength="250" value="" id="step1_id_bean_newSupportingDoc_description" class="NoBorder"/> 
</td> 
+2

आप दस्तावेज़ इनपुट तत्व का उपयोग करने की कोशिश कर रहा से पहले लोड होने की प्रतीक्षा कर रहे हैं? –

+0

मैं इसे स्थानीय स्तर पर भाग गया और मैं तो होना ही पृष्ठ लोड घटना के लिए इंतजार कर रहे थे और मैं iwebbrowser2 त्रुटि – user1902540

+0

हाँ, मैं यह ब्रेक मोड में चलने दिया है तो मैं पेज तक पूरी तरह लोड प्रतीक्षा करें और मैं अभी भी है कि त्रुटि मिलती है मिलता है। –

उत्तर

0

आप

Do Until IEexp.readyState = 4 
DoEvents 
Loop 



IEexp.Document.getElementById("username").Value = "Monthly update" 


IEexp.Document.getElementById("password").Value = FilePth 
कोशिश कर सकते हैं
0

कोड काम करता है। 'सुरक्षा मोड' के बारे में क्या? इस लेख को देखें: http://www.sevenforums.com/tutorials/63141-internet-explorer-protected-mode-turn-off.html। अपने IE ब्राउज़र की सुरक्षा मोड में चलाता है तो उसे बंद करें कोड को फिर से चलाने का प्रयास करें।

' Add References: 
' - Microsoft HTML Object Library 
' - Microsoft Internet Controls 

Sub FileUpload() 

    Dim IEexp As InternetExplorer 
    Set IEexp = New InternetExplorer 
    IEexp.Visible = True 
    IEexp.navigate "www.example.com" 

    Do While IEexp.readyState <> 4: DoEvents: Loop 

    Dim inputElement As HTMLInputElement 
    Set inputElement = IEexp.Document.getElementById("step1_id_bean_newSupportingDoc_description") 

    If (Not inputElement Is Nothing) Then 
     inputElement.Value = "monthly update" 
    Else 
     MsgBox "Input element not found on web page." 
    End If 

    IEexp.Quit 
    Set IEexp = Nothing 
End Sub 
1

आप का उपयोग करते हैं Set IEexp = New InternetExplorerMedium आप अपने इंटरनेट विकल्प में सेटिंग में बदलाव करने की जरूरत नहीं है। यह स्वचालित रूप से मध्यम अखंडता अनुप्रयोग सेटिंग्स के साथ आईई ऑब्जेक्ट को तुरंत चालू करता है।

संबंधित मुद्दे