![]() КАТЕГОРИИ: Архитектура-(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) |
End Sub. [ElseIf условие-n Then
End Sub End Sub End If If условие Then [инструкции] [ElseIf условие-n Then [инструкции_elseif]... [ Else [инструкции_else]] Данная программная конструкция позволяет эффективно управлять ходом выполнения программы, а именно создавать разветвляющиеся вычислительные процессы на основе анализа данных, управлять поведением объектов и передавать управления в другие процедуры. Если не возникает необходимости выполнять какие либо действия, при не выполнении условия, то конструкция может иметь сокращенную запись вида:
Пример:
Sub Test() If IsError(Range("A1")) = True Then Range("B1") = "ошибка" В приведенном выше примере проверяется наличие ошибки в введенной формуле в ячейке [A1]. Если формула содержит ошибку, то в ячейку B1 будет выведено сообщение “ошибка”. Если формула введена верно, то никаких сообщений выводится не будет. Проверка условий может выполняться с использованием сложных реляционных выражений. Пример: Sub Test() If IsError(Range("A1")) = True Or IsEmpty(Range("A1")) = True Then _ Range("B1") = "не верное действие" В приведенном выше примере проверяется условие, при котором в ячейку [A1] не верно введена формула или в ней отсутствует какая либо запись. В случае выполнения условия в ячейку [B1] выводится сообщение “не верное действие”.
При проверке условий могут использоваться следующие реляционные операторы и выражения: <, >, =, <>, And, Or, Xor, Not и некоторые другие, а также функции и выражения возвращающие логические значения.
В процессе разработки программ часто возникает необходимость в заполнении таблиц значениями функций (синтеза таблиц) и обработки массивов данных. Для решения таких задач в VBA имеется программная конструкция цикла типа счетчик For …To … Steep … Next. В общем случае синтаксис конструкции имеет следующий вид:
For счетчик = начало To конец [Step шаг] [инструкции] [Exit For] [инструкции] Next [счетчик]
Рассмотрим на примерах практическое применение данной конструкции.
Предположим, что необходимо вычислить значение функции вида y = f(x) c шагом изменения s = 0,01 в диапазоне значений –1…+1. Результат вычислений необходимо вывести в первый столбец листа Excel. Пусть задана функция y = Sin(x).
Пример: Sub Test() Dim i, AC AC = 1 'присвоение начального значения указателю адреса For i = -1 To 1 Step 0.01 AC = AC + 1 'текущее значение указателя адреса Cells(AC, 1) = Sin(i) 'вывод значений функци и Next i Поясним работу вышеприведенной процедуры. В данном случае переменная AC является указателем строки ячеек Листа Excel и ей присваивается начальное значение = 1. При выполнении каждого шага цикла значение переменной AC увеличивается на 1. В первом шаге цикла переменной i присваивается начальное значение равное –1, которое увеличивается в каждом последующем шаге цикла на 0,01. Значение переменной i является аргументом функции Sin(i). Цикл завершается, когда значение переменной i достигнет 1. Предположим, что необходимо заполнить 100 ячеек во 2 - м столбце Листа Excel случайными числами. Следующий пример демонстрирует реализацию поставленной задачи.
Пример: Sub Test() Dim i
Дата добавления: 2014-01-11; Просмотров: 307; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |