Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб_VBA_верстка2010.doc
Скачиваний:
10
Добавлен:
08.11.2018
Размер:
237.06 Кб
Скачать

Объявление переменных

Хотя в Visual Basic можно явно и не объявлять переменные, но явное объявление типов переменных в процедурах обработки событий перед их использованием - и, естественно, с комментариями - является хорошим стилем в программировании. Это также помогает улучшить читабельность текстов программ.

Для явного объявления используем оператор Dim:

Dim I As Integer – объявляет переменную I как целочисленную

Dim Str As String – объявляет переменную Str как строковую

Объявления переменных можно комбинировать в одной строке, например:

Dim I As Integer, Str As String

Предупреждение:

Частой ошибкой является использование выражения: Dim X, Y, Z As Integer в предположении, что все три переменные будут целого типа. Фактически в данном случае переменные Х и Y будут объявлены как variant, и только Z - как integer. Чтобы избежать этого, необходимо каждый раз использовать идентификатор типа.

Задание 3. Подсчет суммы нескольких ячеек.

Введите следующую программу и убедитесь в ее работоспособности

Sub Изучаем_переменные( )

Dim Sum As Integer

Sum = 6 + 5

MsgBox "Ответ: " & Sum

End Sub

Задание 4. Учитывая, что считать содержимое ячейки рабочей книги Excel можно оператором

n = Worksheets("Лист1").Range("A1")

Модифицируйте программу, таким образом, чтобы выводить на экран сумму значение ячеек A5 и А6. Покажите текст программы и результат преподавателю.

Контрольные вопросы

  1. Как загрузить программную среду VBA?

  2. Как создаются программные модули в VBA?

  3. Как можно организовать в VBA вывод информации на дисплей?

  4. Для чего предназначена функция MsgBox?

  5. Какие имена подходят для обозначения переменных? А какие нет?

  6. Переменные какого типа поддерживает VBA?

  7. Как описываются переменные в программе VBA?

  8. Как описываются константы в программе VBA?

  9. В тексте макроса нет ни одной переменной. С какими данными работает макрос?

Лабораторная работа №3 Построение алгоритма ветвления. Конструкция If _ Then _ Else

Цель работы: построение алгоритма ветвления If _ Then _ Else

Синтаксис строчной формы оператора If _ Then _ Else:

If условие Then [ инструкции ]

[ Else инструкции_else]

Синтаксис блочной формы оператора If _Then _Else:

If условие Then [ инструкции ]

[ ElseIf условие-n Then [ инструкции_elseif ]

[ Else [ инструкции_else ] ]

EndIf

Внимательно разберите приведенные ниже примеры и проверти их в VBA.

Пример 1:

Sub If_конструкция1 ( )

Dim Sum As Integer

Sum = Range("A1")

If Sum >10000 Then MsgBox ">10000" Else MsgBox"< 10000"

End Sub

Пример 2: (Замена фрагмента If программы пример1)

If Sum < 1000 Then

MsgBox "< 1000"

Else

MsgBox "> 1000"

End If

Пример 3:

Sub If_конструкция3()

Dim Sum As Integer

Sum = Range("A1")

If Sum < 1000 Then

MsgBox "< 1000"

ElseIf (Sum >= 1000) And (Sum <= 2000) Then

MsgBox "от 1000 до 2000"

Else

MsgBox "> 2000"

End If

End Sub

Задание. Определение минимального (максимального) значения содержимого трех ячеек

Составьте блок – схему и напишите программу, которая считывает содержимое трех (указанных преподавателем) ячеек листа Excel и определяет минимальное (для четного варианта) или максимальное (для нечетного варианта) значение.

Контрольные вопросы:

1)Каковы синтаксис и назначение конструкции if … then … else?

2)Как организуются комментарии в программе?

3)Как создаются программные модули в VBA?

4)Как задаются процедуры в программе?

5)Как можно организовать в VBA вывод информации на дисплей?

6)Для чего предназначена функция MsgBox?

7)Какие имена подходят для обозначения переменных? А какие нет?

8)Переменные какого типа поддерживает VBA?

9)Как описываются переменные в программе?

Лабораторная работа № 4

Построение алгоритма ветвления. Конструкция Select Case

Цель работы: Построение алгоритма ветвления с помощью конструкции Select Case в VBA.

Оператор Select Case

Select Case-оператор ветвления, который позволяет выполнять одну из нескольких групп операторов в зависимости от значения определенного условия.

Синтаксис конструкции Select Case:

Select Case Проверочное выражение

[Case значение 1

[Операторы 1]]

[Case значение 2

[Операторы 2]]

[Case Else

[Операторы N]]

End Select

В операторе Case можно использовать строковое или числовое выражение. В списке значений допускается указать явное значение. Наберите в VBA тексты примеров и разберите их.

Пример 1.

Sub Экзамен()

Dim Оценка As Integer

Оценка = InputBox("Введите Вашу Оценку")

Select Case Оценка

Case 0 To 2

MsgBox "Плохо"

Case 3

MsgBox "Удовлетворительно"

Case 4

MsgBox "Хорошо"

Case 5

MsgBox "Отлично"

Case Else

MsgBox "Таких оценок не существует"

End Select

End Sub

Case 0 To 2 означает, что если Оценка равна 0, 1 или 2, следует отобразить сообщение "Плохо". Case 3 применимо, если Оценка равна 3, Case 4 применимо, если Оценка равна 4, и аналогично Case 5 - если Оценка равна 5.

В операторе Case допускается применение операций сравнения (> больше, < меньше, >= больше или равно, <= меньше или равно).

Пример 2.

Sub Экзамен2()

Dim Оценка As Integer

Оценка = Worksheets("Лист1").Range("A1")

Select Case Оценка

Case Is < 3

MsgBox "Плохо"

Case 3

MsgBox "Удовлетворительно"

Case Is >= 4

MsgBox "Молодец!"

End Select

End Sub

Рабочее задание:

  1. Напишите программу, выполняющую ввод с клавиатуры двух чисел, и вычитающую из большего числа меньшее. Результат отобразить на экране.

  2. Составить программу в соответствии с заданием в Табл.1 по вариантам и реализовать ее в двух вариантах: при помощи конструкций IF… THEN… ELSE…и SELECT CASE.

Контрольные вопросы:

1) Каков синтаксис конструкции SELECT CASE?

2) Каковo назначение конструкции SELECT CASE?

3) Возможно ли заменить оператор IF… THEN… ELSE…и SELECT CASE?.

Вари-анты

Задание

Вари-анты

Задание

1

8

2

9

3

10

4

11

5

12

6

13

7

14

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]