Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornaya_rabota_6.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
335 Кб
Скачать
☆

Применение процедур-подпрограмм

При создании модулей наряду с процедурами-функциями широко применяются подпрограммы. На языке VBA подпрограммы называют процедурами-подпрограммами и обозначают ключевым словом Sub. В отличие от процедур-функций (функций) процедуры-подпрограммы (подпрограммы), выполняя свои задачи, могут не возвращать результирующие значения. Подпрограмму можно запускать из других процедур, но ее нельзя вызвать так, как функцию, указав имя в выражении или операторе.

Рассмотренная функция Рубли_в_доллары может быть оформлена как подпрограмма, поскольку в ней не формируется возвращаемое значение.

Оформим вычислительную часть процедуры Рубли_в_доллары как подпрограмму Вычисление и вызовем ее в функции Рубли _в_доллары. Начнем с создания подпрограммы:

• Откройте модуль Прейскурантные расчеты в режиме конструктора.

• Выберите в меню Вид Microsoft Access команду Программа, а затем в окне редактора выберите в меню Insert команду Procedure.

• В открывшемся окне активизируйте переключатель Sub, введите имя Вычисление и нажмите кнопку ОК.

Итак, в модуль включена новая процедура. Access автоматически вводит в окно модуля начальную и конечную строки подпрограммы. Ключевое слово Sub указывает на то, что речь идет о подпрограмме:

Public Sub Вычисление () End Sub

Далее необходимо через буфер обмена скопировать операторы из функции Рубли_в_доллары в создаваемую подпрограмму.

 

 

 

Определение и вызов подпрограммы

Теперь выражение для пересчета цен определено как подпрограмма, которая может быть вызвана из любой процедуры базы данных. Вызов подпрограммы осуществляется посредством оператора вызова, в котором указывается имя подпрограммы (скобки в данном случае не ставятся).

Выполнение кода vba

Код VBA (последовательность операторов) выполняется при вызове функции или подпрограммы. Во время вычисления выражения, в котором использована функция, выполняется код этой функции. Кроме того, код можно выполнить:

— вызывая функцию, связанную с некоторым событием, например Оп-Print( Печать),

— вызывая функцию с помощью макрокоманды ЗапускПрограммы;

— вызывая функцию или подпрограмму в окне Immediate.

Если подпрограмму необходимо связать с событием или вызвать с помощью макрокоманды ЗапускПрограммы, следует оформить ее как функцию или построить дополнительные функции вызова подпрограммы.

Инициализация кода

В Access существуют следующие способы запуска программ Visual Basic

— Создание процедуры обработки события. Процедура обработки co6ытия выполняется при выполнении пользователем действия, которое вызывает событие. Например, программу, выполняющуюся при открытии формы или отчета, включают в процедуру обработки события Click (Нажатие кнопки) для кнопки, при нажатии которой будет открываться эта форма или отчет.

— Функция в выражении. Вызов функции в выражении или в окне проверки редактора Visual Basic. Например, функции применяются в выражениях, определяющих вычисляемые поля в формах, отчетах или запросах. Выражения используются для указания условий в запросах и фильтрах, а также в макросах и макрокомандах, в инструкциях и методах Visual Basic и в инструкциях SQL

— Вызов процедуры в другой процедуре или в окне проверки редактора Visual Basic. Если некоторая программа выполняется часто, можно поместить ее в процедуру Sub. Это позволяет не повторять программу Visual Basiс выполняющую нужную операцию, в каждой процедуре, а написать ее один раз в общей процедуре, и затем выполнять эту общую процедуру каждый раз, когда требуется выполнить данную операцию

— Запуск в редакторе VBA. Выбор команды Run Sub/UserForm в меню Run редактора Visual Basic для запуска процедуры без аргументов. В окне программы поместите курсор в процедуру, которую требуется выполнить а затем выберите команду Run Sub/UserForm из меню Run.

— Макрокоманда ЗапускПрограммы в макросе. Макрокоманда ЗапускПрограммы, выполняемая в макросе, вызывает встроенную функцию Visual Basic или функцию, созданную пользователем. Для запуска процедуры

Sub или процедуры обработки события следует создать функцию, которая вызывает процедуру Sub или процедуру обработки события, и с помощью макрокоманды ЗапускПрограммы вызвать эту функцию.

 

  

Порядок выполнения работы:

 

Задание 1.

  1. Открыть базу данных «Торговля».

  2. Выбрать объект базы данных – Модуль. Нажать кнопку Создать.

  3. В меню Вставка(Insert) выбрать – Процедура(Procedure). Указать имя(Name) процедуры и тип(Type) вставляемого элемента (функция-Function или программа-Sub). Указать общая (Public) — процедура доступна для всех процедур во всех модулях или личная (Private) — процедура доступна для других процедур только в том модуле, в котором она объявлена.

  4. Объявить переменные a,b,c – целого типа: dim a,b,c as integer

  5. Ввести переменные a,b: a=2 b=500 или a=InputBox(«Введите а»,»Ввод данных») b= InputBox(«Введите b»,»Ввод данных»)

  6. Вычислите с и выведите результат: c=a*b MsgBox "Результат c = " & c

  7. Сохраните модуль, выбрав в пункте меню File пункт Save БдТорговля

  8. Для выполнения модуля выберите в пункте меню Run команду Run Sub.

  9. Если необходимо отредактировать модуль, откройте его в режиме Конструктора и отредактируйте.

Задание 2.

Выполнить индивидуальное задание, выбрав в таблице 1 вариант в соответствии с номером студента в журнале. Для исходных данных создать два модуля( в первом модуле ввод данных выполнить с помощью оператора присваивания , во втором модуле ввод данных выполнить с использованием функции InputBox). 

Таблица 1

 

Вариант

Значения переменных

Формула

1

x = 3.981

y = 1.625

c = 0.512

2

x = -6.251

a = 0.827

z = 25.001

3

x = 3.251

y = 3.325

z = 0.466

4

x = 0.622

y = 3.325

z = 5.541

5

x = 17.421

b = 10.365

z = 0.828

6

x = 2.444

y = 0.869

z = -0.166

7

x = 0.335

y = 0.025

z = 32.005

8

x = 3.258

r = 4.005

z = -0.666

9

x = 0.100

y = -8.750

z = 0.765

10

x = 1.542

a = 3.261

z = 8.005

11

x = 1.426

a = -1.220

p = 3.500

12

x = -4.500

y = 0.750

z = 0.845

13

a = 3.741

x = 0.825

z = 5.160

14

x = 0.400

a = 2.875

f = -0.475

15

t = 0.750

a = 0.845

m = 2.5

16

x = -15.24

a = 5.642

b = 20.001

17

x = 3.258

b=4.005

18

x = -6.251

b = 0.827

a = 25.001

19

x = 0.100

y = -8.750

z = 0.765

20

x = -6.251

y = 0.827

z = 25.001

21

x = 3.251

y = 3.325

z = 0.466

22

x = -0.622

y = 3.325

z = 5.541

23

x = 17.421

24

x = 2.444

a = 0.869

y = 0.166

25

x = 0.335

y = 0.025

g = 32.005

26

x = 3.258

y = 4.005

z = -0.666

27

x = 0.100

y = -8.750

z = 0.765

28

x = 1.542

r = 3.261

z = 6.015

29

x = -15.246

y = 4.642

z = 2.001

30

x = 1.876

c = 3.231

b = 5.865

31

a = 2.876

f = 1.345

z = 2.946

32

x = 5.754

z = 4.763

a = 1.007

33

x = 2.873

y = 0.987

z = 2.534

 

 

 

 

13

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