Эксель таблица очистки

я довольно новичок в excel vba. У меня есть проблема:

Я хочу, чтобы Excel проверял наличие товара @ www.bgstechnic.com/availability

например "1195"

Я написал это vba:

Sub ImportMyData()

    Dim IE As New InternetExplorer

    IE.Visible = False
    IE.navigate "http://www.bgstechnic.com/availability?processed&F1244467957750MNRHTT=_"

    Do
        DoEvents
    Loop Until IE.readyState = READYSTATE_COMPLETE

    IE.document.getElementById("item-numbers").Value = "1195"

    Set goBtn = IE.document.getElementById("bgs-submit")
    goBtn.Click

    Do
        DoEvents
    Loop Until IE.readyState = READYSTATE_COMPLETE

    Dim sdd As String
    sdd = IE.document.getElementById("availability-results").innerText

    MsgBox sdd

End Sub

моя проблема в том, что мне нужна только часть "Товар на складе, более 50 шт. в наличии" для вставки в excel, но мне не удается найти идентификатор этой подтаблицы ( ?)

может ли кто-нибудь помочь мне, пожалуйста?


person Justas Mundeikis    schedule 29.12.2014    source источник
comment
Теперь это странно: если я перехожу на sdd = IE.document.getElementsByTagName(td)(1).innerText, я получаю ошибку времени выполнения 91, но, нажимая f5 и запуская дальше, я получаю сообщение с доступным количеством... любой клоу как это решить?   -  person Justas Mundeikis    schedule 30.12.2014


Ответы (1)


Вы должны углубиться дальше по имени класса. Попробуй это:

sdd = IE.Document.getElementsByClassName("availability-desc")(0).innerText

Что вернет описание строки (0) из столбца доступности. Это должно работать, но (отказ от ответственности) я не пробовал из-за некоторых #!@#!# проблем с IE;)

person ChE Junkie    schedule 30.12.2014
comment
К сожалению, в этом случае я получаю сообщение об ошибке: Ошибка выполнения 428. Объект не поддерживает это свойство или метод. У моего I-explorer версия 11. - person Justas Mundeikis; 30.12.2014
comment
IE 11 поддерживает этот метод (см. caniuse.com/#feat=getelementsbyclassname). хотя неправильно понял структуру вызова. Быстрый поиск: возможно, попробуйте что-то вроде, например. stackoverflow .com/questions/20205442/ - person ChE Junkie; 31.12.2014