PrivateSubCommandButton1_Click()




VBA. Оператор условного перехода. Объекты Excel

Цель работы:

-Разработка программ разветвляющейся структуры с условным оператором IF.

- Программирование с использованием объектов EXCEL.

Для выполнения примеров и заданий создайте файл Lab_2_VBA (имя можете выбрать по своему.

Часть 1.

1. В схемах алгоритмов выбор условия обозначается с помощью символа,

 

 

от которого отходит ветвление для указания дальнейших действий в зависимости от выбора “ДА” или “НЕТ”.Выбор хода алгоритма, как правило,зависит от значения переменной или выражения, состояния объекта. Например,

НЕТ

ДА

….

2. В программном коде, чтобы реализовать ветвление применяется условный оператор

IFTHEN.

Примечания.

1 В приведенных ниже описаниях синтаксиса выражения, записанные в [ ] (квадратные скобки) необязательны.

Использование: (двоеточие) позволяет записать несколько выражений в одной строке. Применяется редко.

Условный оператор позволяет выбирать и выполнять действия в зависимости от истинности некоторого условия. Имеется два варианта синтаксиса: В первом случае он имеет вид:

IF< условие >Then [операторы 1] [ Else [операторы 2] ]

Во втором случае оператор расположен на нескольких строках:

IF< условие >Then

[операторы]

[ElseIf< условие – n> Then

[операторы-n ]…

[Else]

[ИначеОператоры]]

EndIf

Здесь условие обязательно в обоих вариантах. Оно может быть числовым или строковым выражением со значениями TRUE или FALSE.

Операторы 1 и операторы 2 это последовательности из одного или нескольких операторов. По крайней мере одна из этих последовательностей должна быть непустой. Если условие истинно (TRUE), выполняется последовательность «операторы 1», если ложно, “операторы 2”.

Примеры записи оператора:

Условный оператор в виде одной строки:

IF A>10 Then A=A+1: B=B+A: C=C+B ELSE C=A*B: A=C+2

 

Тот же условный оператор в виде блока:

IF A>10 Then

A=A+1

B=B+A

C=C+B

ELSE

C=A*B: A=C+2

EndIf

 

Далее рассматривается примеры использования условного оператора и задания для выполнения.

Задание 1 Определить положение точки с заданными координатами на плоскости.

Пример1 (Выполнить)

Если точка М(x1,y1)лежит:

· выше прямой y=kx+b, то выдать сообщение “Точка М лежит выше прямой”;

· ниже прямой, то выдать сообщение “Точка М лежит ниже прямой”;

· на прямой, то выдать сообщение “Точка М лежит на прямой”.\

 

Решение задачи.

 

 
 

1 этап. Разработать интерфейс приложения.

Рис.1 Интерфейс приложения

2 этап. Определить ход решения задачи и составить алгоритм программы. В нашей задаче, чтобы определить положение точки относительно прямой, нужно подставить координату точки X1 в уравнение прямой и сравнить полученное значение Yc координатой точки Y1. Если значение Y=Y1, точка лежит на прямой; если полученное значение Y>Y1, точка –ниже прямой, и,наконец, если Y<Y1, точка – выше прямой.

 

СХЕМА АЛГОРИТМА ПРОГРАММЫ(См. ниже)

3 этап. Загрузить редактор VBA и разработать приложение, используя в качестве интерфейса UserForm.

 

 

 

       
 
 
   

 


4 этап. Написать программный код. Для этого рекомендуется выполнить двойной щелчок по кнопке СТАРТ и перейти в окно программы, где набрать текст процедуры обработки события.

Примерная структура процедуры приведена ниже. Приведены пронумерованные блоки выражений и операторов. Для вывода сообщения использована функция MsgBox.

 

PrivateSubCommandButton1_Click()

 

1. Описаниепеременныxx1, y1, k, b, y

Dim x1 As Double, y1 As Double, k As Double

2. Блок операторов считывания значений переменных из окон TextBox. (Подобные операторы применялись в предыдущей лаб. работе).

 

3. Оператор определения значения y (y = k * x1 + b)

 

4. Условный оператор (текст приведен ниже)

 

Ify = y1 Then

MsgBox "Точка лежит на прямой"

ElseIfy>y1 Then

MsgBox "Точка лежит ниже прямой "

Else

MsgBox "Точка лежит выше прямой "

EndIf

 

EndSub

Процедурадлякнопки ВЫХОД:

Private Sub CommandButton2_Click()

Unload UserForm1 (илиUserForm1.Hide)

EndSub

Для объекта Флажок ( CheckBox) -подобная процедура разрабатывалась в лаб. работе №1.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-07-29 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: