私は15,000の製品を持っており、それらがX、Y、Zかどうかを知る必要があります。以下のコードは、製品がXYZのタイプであるかどうかを確認します。要素にページが存在するかどうかを確認してください
神は私を助けます、それは実際に働きます。唯一の例外はAmazonで販売されなくなった製品を検索する場合です。その後、私はこれを探してい要素のIDは、私がページ上に存在しない検索、およびエラー「オブジェクト変数を持つまたはWithブロック行のコードブレーク
text = document.getelementbyID("result_0").innertext
だ製品の説明が含まれています変数は設定されていません "。
残りのコードを実行する前に要素が存在するかどうかを確認するにはどうすればよいですか?
ありがとうございます!
サム
Sub LetsAutomateIE()
Dim barcode As String
Dim rowe As Integer
Dim document As HTMLDocument
Set ie = CreateObject("InternetExplorer.Application")
Dim Element As HTMLDivElement
Dim text As String
Dim pos As Integer
rowe = 2
While Not IsEmpty(Cells(rowe, 2))
barcode = Cells(rowe, "B").Value
With ie
.Visible = False
.navigate2 "https://www.amazon.co.uk/s/ref=nb_sb_noss_1?url=search-
alias%3Daps&field-keywords=" & barcode
Do Until ie.readyState = 4
Loop
End With
Set document = ie.document
text = document.getElementById("result_0").innerText
If InStr(text, "X") Or InStr(text, "Y") Or InStr(text,
"Z") <> 0 Then pos = 1
If pos <> 0 Then Cells(rowe, 4) = "Y" Else Cells(rowe, 4) = "N"
rowe = rowe + 1
Wend
Set ie = Nothing
End Sub
エラートラップ –
返された要素がオブジェクトであるかどうかを確認してみてください。 'set Element = document.getelementbyID(" result_0 ")'のようなものです。 InnerTextプロパティを返していない場合は 'ifObject(Element)then'を返し、オブジェクトとして返されたかどうかを確認してください。 –
ありがとう、ライアン!それが設定される前に、要素をどのように暗くする必要がありますか? – Sam