![>](style_images/1/nav_m.gif)
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.218.231.89] |
![]() |
|
![]() |
Сообщ.
#1
,
|
|
Используйте цикл FOR EACH X in… NEXT для обработки коллекции
При каждой итерации Х будет содержать ссылку на следующий элемент коллекции, соответственно, работа с элементами коллекции значительно упрощается Исключение: если Вам надо перебрать элементы в порядке, отличном от того, в котором они были добавлены в коллекцию – выбор у Вас отсутствует: только FOR … NEXT , т.к. у FOR EACH … нет параметров, управляющих порядком его выполнения (STEP) см. также Работа с циклами Удаляйте элементы из коллекции «Сверху-вниз» ![]() ![]() Dim col as New Collection For j=col.Count to 1 step -1 ''''''''''''''''''''''''''' Col.Remove j Next При таком варианте кода удалять элементы проще, т.к. при этом индексы элементов коллекции не изменяются. Не удаляйте элементы из коллекции для ее очистки Для очистки коллекции можно сделать так: ![]() ![]() Dim col as New Collection For j=col.Count to 1 step -1 Col.Remove j Next Но гораздо быстрее будет так: ![]() ![]() Set col= New Collection так как в данном случае Вы просто освобождаете ссылку на исходную коллекцию Использованы материалы: "From Access 2002 Desktop Developer's Handbook" Litwin, Getz, and Gunderloy. (Sybex, 2001) |