Прочитать параметры из выпадающего списка в массив

Я пытаюсь написать код (в Macro Express Pro), чтобы прочитать все параметры в раскрывающемся списке и установить их в массив в этом формате:

;option 1;option 2;option 3;option 4;option 5

До сих пор мне удавалось отображать его в MsgBox (просто в качестве теста, я не хочу, чтобы окно сообщения работало), но не добавлять их в массив. Вот с чем я работаю (с сайта):

<select id="ctl00_cphContent_ddlWorkQueue" class="ddlbox">
    <option value="4449">option 1</option>
    <option value="4370">option 2</option>
    <option value="4371">option 3</option>
    <option value="4372">option 4</option>
    <option value="4373">option 5</option>
</select>

Из внешнего сценария VBS:

set OptionChooser = MyIE.Document.GetElementbyid("ctl00_cphContent_ddlWorkQueue")

For Each objOption in OptionChooser.Options
    Msgbox objOption.InnerText
Next

person Michael    schedule 08.07.2014    source источник


Ответы (1)


Создайте динамический массив и заполните его параметрами, затем Join массив:

ReDim arr(OptionChooser.Options.Length - 1)
For i = 0 To OptionChooser.Options.Length - 1
  arr(i) = OptionChooser.Options(i).Text
Next
str = Join(arr, ";")

MsgBox str
person Ansgar Wiechers    schedule 08.07.2014
comment
Как вы получаете доступ к переменной вне внешнего скрипта? Я пробовал использовать str и менять str на Work, но получаю результаты только в MsgBox, а не за пределами внешнего скрипта. - person Michael; 08.07.2014
comment
@MichaelAustinKerr: Что ты имеешь в виду под снаружи? Куда вы хотите, чтобы это значение пошло? - person Ansgar Wiechers; 08.07.2014
comment
Извините, разобрался. Значение оказалось слишком большим, поэтому оно не копировалось правильно. Я попробую записать это в текст или что-то в этом роде, а затем забрать его оттуда. - person Michael; 08.07.2014