Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Инструкция For-Each-Next с семействамиСодержание книги
Поиск на нашем сайте Преимущества For- Each- Next при работе с массивами бесспорны, но они мерки рядом с достоинствами этой структуры в обращении с объектами семейств. Рассмотрим простой пример. Sub ForEachNextWorksheet() Dim SheetVar As Worksheet For Each SheetVar In ActiveWorkbook.Worksheets MsgBox SheetVar.Name Next End Sub В ForEachNextWorksheet происходит обращение к каждому рабочему листу из семейства Worksheets активной рабочей книги, в результате которого имена листов последовательно выводятся на экран.
Вы вправе изменить значения свойств Name рабочих листов в этом примере. Sub ForEachNextWorksheet() Dim SheetVar As Worksheet For Each SheetVar In ActiveWorkbook.Worksheets SheetVar.Name = "Work" & SheetVar.Name MsgBox SheetVar.Name Next End Sub Здесь изменяются имена листов — перед каждым из них добавляется слово Work. Для восстановления прежних имен введите следующий фрагмент кода. Sub ForEachNextWorksheet() Dim SheetVar As Worksheet Dim x As Integer x = 1 For Each SheetVar In ActiveWorkbook.Worksheets SheetVar.Name = "Лист" & x x = x + 1 MsgBox SheetVar.Name Next End Sub Инструкцию For- Each- Next можно применять и для вызова методов объектов семейства. Следующая процедура закрывает все книги, оставляя лишь одну, в которой размещена сама процедура. Sub ForEachNextWorkbook() Dim Book As Workbook For Each Book In Application.Workbooks If Book.Name <> ThisWorkbook.Name Then Book.Close End If Next End Sub В цикле имя каждой рабочей книги сравнивается с именем книги ThisWorkbook. Если имена не совпадают, для книги вызывается метод Close. Управляющая инструкция While-Wend Действие ее подобно действию For- Next, но группа инструкций выполняется не заданное число раз, а до соблюдения определенного условия. В программе WhileWend инструкция While- Wend использована для выделения определенного значения из последовательности случайных чисел. Sub WhileWend() Dim LotteryEntry As Integer LotteryEntry = 0 While LotteryEntry <> 7 LotteryEntry = Int(10 * Rnd()) Beep Wend MsgBox "Выпал номер " & LotteryEntry & ". Вы выиграли!" End Sub Программа WhileWend гарантирует, что в информационном окне всегда отображается заданное число. Цикл While- Wend выполняется, пока значение переменной LotteryEntry не станет равным 7 (в условии использован оператор неравенства <>). При каждом выполнении цикла этой переменной присваивается случайное значение от 0 до 9, а затем (впрочем, без особой надобности) вызывается функция VBA Веер, подающая звуковой сигнал через внутренний динамик компьютера. Запустите эту программу несколько раз, и Вы услышите разное количество сигналов, в зависимости от того, на каком шаге генератор случайных чисел вернет число 7. Замечание: Чтобы генератор случайных чисел при каждом запуске приложения выдавал новую последовательность случайных чисел, вставьте в начало программы команду Randomize. Если Вы этого не сделаете, при каждом открытии файла рабочей книги будет генерироваться одна и та же последовательность. Рассмотрим структуру цикла While- Wend подробнее.
Комментарии в программе Комментарий — это любые символы справа от апострофа ('). Их может быть много — целая строка кода, или несколько — в конце строки с командой. Если Вы предпочли второй вариант, выравнивайте их с помощью символов табуляции. Помните, что комментарии должны делать код более понятным, а не запутывать его.
|
||||||||||||
|
Последнее изменение этой страницы: 2021-12-15; просмотров: 124; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.006 с.) |