Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Операторы, выражения и операции
Строка с кодом в исходном тексте программы VBA называется программным оператором. Программный оператор – это неделимое предложение, выполняющее какое-либо действие. Он может состоять из любой комбинации ключевых слов VBA, свойств, функций, операций и символов, совокупность которых представляет собой корректную конструкцию, распознаваемую компилятором VBA. Например, Label1.Caption = Time Правила, применяемые при построении программных операторов, называются синтаксисом. Программный оператор может включать выражения. Выражение (Expression) – это комбинация знаков операций и операндов, а также скобки. Назначение любого выражения – получение некоторого значения. Синтаксическая конструкция выражения: Операнд1 [операция Операнд2 [операция Выражение]] В зависимости от типа формируемых значений определяются типы выражений. Например, если значениями выражения являются целые и вещественные числа, то говорят об арифметических выражениях. Для формирования и последующего вычисления выражений служат операции. Для записи операций VBA имеет знаки операций, которые воспринимаются компилятором как отдельные лексемы. Последовательность вычислений в программном операторе определяется приоритетом операций. Каждая операция имеет свой приоритет (ранг), как показано в таблице 7. Операции ранга 1 имеют наивысший приоритет и в программном операторе выполняется первым. Операции одного ранга в выражениях выполняются в соответствии с правилами ассоциативности (слева направо или наоборот).
Таблица 7 - Приоритеты операций
Операнды связаны между собой знаками операций В программах на VBA можно использовать стандартный набор операций над данными. Различают следующие типы операций: - операция присваивания; - математические, выполняются над числами и их результатом являются числа; - отношения, применяются не только к числам, и их результатом являются логические значения; - логические операции; - строковые операции.
Операция присваивания При объявлении переменной происходит связывание имени переменной с областью памяти, в которой будет храниться ее значение. Однако это значение после объявления может оказаться произвольным. Для того чтобы присвоить переменной нужное значение, используется операция присваивания. Назначает результат вычисления выражения переменной, константе или свойству объекта. Операция присваивания всегда включает знак равенства =. Синтаксис: Имя_Переменной = Выражение где Имя_Переменной – имя переменной (идентификатор); Символ «=» – знак операции присваивания; выражение – значение (число), комбинация переменных, констант, функций, связанных знаками операций. Работа операции присваивания. Операция присваивания предписывает выполнить выражение, заданное в его правой части, и присвоить результат имени переменной, имя которой указано в левой части. Пример 1. x = 2 x = x + 2 (переменной х будет присвоено 4) Для присваивания переменной ссылки на объект применяется инструкция Set. В общем случае инструкция Set имеет следующий синтаксис: Set objectvar = [New] objectexpression [Nothing] где New – ключевое слово, которое используется при создании нового экземпляра объекта; Nothing – позволяет освободить все системные ресурсы и ресурсы памяти, выделенные для объекта, на который имелась ссылка (т.е. она удаляет объект из памяти). Пример 2. Dim A as Object Set A = cmdOK MsgBox А.Caption Инструкция Set присваивает переменной А элемент управления Кнопка с именем cmdOK и далее выводит в окне надпись отображаемую на поверхности кнопки.
В VBA доступ к свойствам и методам объекта осуществляется через точку. Например ActiveSheet.Cells(1,1). Если нужно обратиться к нескольким свойствам одного объекта, то придется каждый раз писать имя этого объекта. Но есть способ этого избежать. Оператор With используется для указания обьекта, с которым мы будем работать. Это выглядит так: With объект Рассмотрим пример. В нижеприведенном коде выводятся имя и свойство видимости объекта таблицы: Sub Test() Используя With это можно сделать так:
Sub Test() Используя With можно получить доступ и к структурам, определенным пользователем: '----------- Описание структуры -------- '----------- Использование -------- Sub Test() With MyCars End Sub
26. Операторы в VBA. Условный оператор: линейный (безальтернативный, альтернативный), блочный (безальтернативный, альтернативный). Структура, работа. Примеры.
Условный оператор Условный оператор VBA позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Таким образом, условный оператор – это средство ветвления вычислительного процесса. В VBA существует 2 типа условного оператора: линейный и блочный. 1 Линейный условный оператор используется для того, чтобы выполнить какой-либо один оператор, если некоторое условие будет истинным. Синтаксическая конструкция линейного оператора имеет две формы: безальтернативную, альтернативную. Структура безальтернативного условного оператора (сокращенный вариант): If <условие> Then <оператор 1> Структура альтернативного условного оператора (полный вариант): If <условие> Then <оператор 1> Else <оператор 2> где If, Then, Else - зарезервированные слова (если, то, иначе); <условие> - произвольное выражение логического типа; <оператор 1>, <оператор 2> - любые операторы языка VBA. Работа. Вначале вычисляется условное выражение <условие>. Если результат есть True (истина), то выполняется <оператор 1>, а <оператор 2> пропускается. Если результат есть False (ложь), наоборот, <оператор 1> пропускается, а выполняется <оператор 2>. 2 Блочный условный оператор используется в случае истинности условия необходимо выполнить несколько программных операторов (блок операторов). Блочный оператор имеет две формы: безальтернативный, альтернативный. Структура безальтернативного блочного оператора (сокращенный вариант ) If <условие> Then <оператор1> <оператор2> ……………. <оператор n> End If где End If - указывает на окончание блока оператора If. Структура альтернативного блочного оператора: If <условие> Then <оператор1> <оператор2> ……………. <оператор n> Else <оператор1> <оператор2> ……………. <оператор n> End If Пример 1. Постановка задачи. Создать в стандартном модуле пользовательскую процедуру вычисления уравнения вида ax2 + bx + c = 0. Технология выполнения задания: 1 Исходные данные: a, b, c Î R Результат: х1, х2 Î R. 2 Набрать в стандартном модуле проекта следующую пользовательскую процедуру: Private Sub yravnenie () a = InputBox("a=", a) b = InputBox("b=", b) c = InputBox("c=", c) d = b ^ 2 - 4 * a * c If d >= 0 Then x1 = (-b + Sqr(d)) / (2 * a) x2 = (-b - Sqr(d)) / (2 * a) MsgBox (x1) MsgBox (x2) Else MsgBox ("Решений нет") End If End Sub 3 Вычислить корни квадратного уравнения при произвольных исходных данных. Альтернативный блочный оператор If применяется в тех случаях, когда при выполнении условия необходимо осуществить один набор программных операторов, а при невыполнении – другой.
27. Операторы в VBA. Вложенные структуры условного оператора If: применение, формат. Конструкция If…Then…ElseIf: назначение, формат, работа. Оформление сложных условий в условном операторе. Примеры.
Операторы IF могут быть вложенными друг в друга. Такое вложение операторов применяется, если нужно проверить какое-либо условие при другом условии, которое является истинным. Формат вложенного оператора If: If <условие1> Then If <условие2> Then <оператор1> <оператор2> ……………. <оператор n> Else <оператор1> <оператор2> ……………. <оператор n> End If End If Пример 2. Постановка задачи. Создать в стандартном модуле пользовательскую функцию нахождения максимального среди трех заданных чисел y1 = a+2*b; y2 = a*b+c; y3 = c2 + 1. Технология выполнения задания: 1 Исходные данные: a, b, c Î R Результат: Max Î R. 2 Набрать в стандартном модуле проекта следующую пользовательскую функцию: Function Max(a,b,c) y1 = a+2*b y2 = a*b+c y3 = c^2+1 If y1 > y2 Then If y1 > y3 Then y = y1 Else y = y3 Else If y2 > y3 Then y = y2 Else y = y3 End If End Function 3 Вычислить корни квадратного уравнения при произвольных исходных данных. При использовании вложенных операторов If важно не перепутать варианты сочетания условий. Нужно помнить правило: альтернатива Else считается принадлежащей ближайшему оператору If, не имеющему ветви Else. В VBA предусмотрена конструкция для работы с несколькими операторами If. Эти операторы применяются в случаях, когда необходимо рассмотреть еще несколько условий в дополнение к исходному. Для этого служит конструкция: If…Then…ElseIf. В отличие от вложенных операторов конструкция с несколькими операторами If позволяет проверить дополнительное условие, если исходное условие принимает значение False. Формат записи: If <условие1> Then <оператор1> ElseIf <условие2> Then <оператор2> Else <.оператор3> EndIf Пример 3. Постановка задачи. Менеджеру по продажам необходимо разработать функцию, позволяющую рассчитывать комиссионные. Процент комиссионных зависит от объема проданного товара и начисляется по следующему правилу, представленному в таблице 15.
Таблица 15 - Правила расчета комиссионных
Технология выполнения задания: 1 Исходные данные: Продажи Î Z. Результат: Комиссионные Î R. 2 Построить для расчета комиссионных в стандартном модуле пользовательскую функцию: Function Комиссионные (Продажи) If Продажи <= 9999 Then Комиссионные = Продажи * 0.08 ElseIf Продажи <= 19999 Then Комиссионные = Продажи * 0.1 ElseIf Продажи <= 39999 Then Комиссионные = Продажи * 0.12 Else Комиссионные = Продажи * 0.14 End If End Function 3 Вычислить.
28. Операторы в VBA. Оператор выбора (переключатель): структура, работа. Примеры.
|
|||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-01-19; просмотров: 213; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.17.46 (0.033 с.) |