Я пытаюсь выполнить итерацию по массиву ссылок диапазона.Excel VBA Iterate Array объектов диапазона
Dim labels As Collection
Set labels = New Collection
Dim myLabel As Range
Set myLabel = FindDataRow(mySearchterms, CurrentWorksheet) ' <- Returns a Range
labels.Add (myLabel)
Позже я пытаюсь перебирать эти ссылки Range и следующий код не работает: я получаю ошибку 424. выполнения Я понимаю, что требуется объект, но как метка стала строкой.
Dim label As Variant
Set label = Nothing
For Each label In labels
Debug.Print (label & " in: " & label.Row)
Next label
Я попытался следующие this other answer here, но так как я новичок в VBA в Excel Я не понимаю, как ссылка Range помещается в структуру данных, а затем извлекаться/ссылка для доступа к label.Row
как я хочу выше (в том месте, где говорится: «~~> Делайте все, что вы хотите сделать с этим диапазоном здесь»)
До сих пор я понимаю, что labels
является коллекцией и не заботится о типе элементов, которые у него есть. Поэтому я добавил Range
ссылок. Но я не могу получить их позже. Где я иду не так?
Спасибо! Это заняло у меня большую часть дня. – user1532326