КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Конструкція оператора For Each мови VBA
Конструкція оператора With мови VBA. Після ознайомлення з об’єктами, слід розглянути декілька конструкцій мови VBA, які значно полегшують роботу з об’єктами. Для спрощення розуміння використання оператора With, розглянемо приклад форматування діапазону комірок Процедура форматування діапазону комірок: Public Sub Format() Range("B2:D15").NumberFormat = "#,##0.00" Range("B2:D15").Font.Name = "MS San Serif" Range("B2:D15").Font.FontStyle = Regular Range("B2:D15").Font.Size = 13 Range("B2:D15").Font.Strikethrough = False Range("B2:D15").Font.Superscript = False Range("B2:D15").Font.Subscript = True Range("B2:D15").Font.OutlineFont = True Range("B2:D15").Font.Shadow = True Range("B2:D15").Font.Underline = xlUnderlineStyleNone Range("B2:D15").Font.ColorIndex = xlAutomatic End Sub При введені коду процедури ми декілька разів набираємо Range("B2:D15"). Із подібних ситуацій VBA пропонує інший вихід – використання оператора With, який “прив’язує” властивості або методи до об’єкта. Оператор With має наступний синтаксис: With об’єкт Оператори End With Лістинг наведений нижче демонструє той же код процедури, але з використанням оператора With, який спочатку “прив’язує” до об’єкта Range("B2:D15") властивість NumberFormat = "#,##0.00", а потім властивість Font через другий оператор With “прив’язується” до об’єкта Range("B2:D15"). Оператори With можна вкладати один в одного (допускається до семи вкладень). Процедура форматування діапазону комірок із використанням оператора With: Public Sub Format() With Range("B2:D15") . NumberFormat = "#,##0.00" With. Font . Name = "MS San Serif" . FontStyle = Regular . Size = 13 . Strikethrough = False . Superscript = False . Subscript = True . OutlineFont = True . Shadow = True . Underline = xlUnderlineStyleNone . ColorIndex = xlAutomatic End With End With End Sub Якщо оператор With використовується для виконання декількох дій для одного об’єкта, то оператор For Each використовується для виконання одного і того ж набору дій для декількох об’єктів. Оператор For Each, як правило, використовувати для перегляду елементів масиву або колекції. Оператор For Each має наступний формат: For Each елемент In колекція(масив) ....Next елемент Елемент – це ідентифікатор змінної-інтерпретатора; колекція – ідентифікатор колекції або масиву. У коді процедури Колекції переглядаються аркуші активної книги і на екран по черзі виводиться № аркуша та його ім’я. Приклад використання оператора For Each. Public Sub Колекції() Dim Аркуш As Worksheet Dim Nomer As Integer Nomer = 0 For Each Аркуш In ActiveWorkbook.Worksheets Nomer = Nomer + 1 MsgBox ("Ім’я аркуша: ") & Nomer & " " & Аркуш.Name Next Аркуш End Sub
Дата добавления: 2014-01-05; Просмотров: 417; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |