- •Основы vba
- •Алфавит языкаVba
- •Имя переменной
- •Объявление переменных
- •Оператор описания переменных
- •Dim a As Integer
- •Знаки операций
- •Математические функции
- •Оператор присваивания
- •Ввод данных
- •Оператор вывода
- •Линейный процесс
- •Программный код
- •Оператор условного перехода
- •Операторы цикла
- •Оператор цикла с параметромFor–Next
- •Оператор выбораSelectCase
- •Начисление комиссионных
- •Оператор цикла с предусловием While – Wend
- •Оператор цикла Do – Loop
- •Массивы
- •Вывод массива
- •Вычисление суммы, произведения и количества элементов в одномерном массиве
- •Вычисление минимального и максимального элементов в одномерных массивах
- •Двумерные массивы
- •Ввод двумерного массива
- •Вывод двумерного массива
- •Формирование матрицы
- •Вычисление суммы, произведения, количества, минимума и максимума в двумерных массивах
- •Подпрограммы
- •Подпрограмма-процедура
- •Локальные и глобальные параметры (переменные)
- •Формальные и фактические параметры
- •Параметры, передающиеся по значению
- •Подпрограмма-функция
Локальные и глобальные параметры (переменные)
Параметры, которые используются внутри процедуры, называются локальными, а параметры, которые могут использоваться в любом месте главной программы и в процедуре, называются глобальными.
Формальные и фактические параметры
Описываемые в заголовке процедуры параметры называются формальными, а те параметры, которые подставляются на их место при вызове процедуры, называются фактическими, так как они при выполнении процедуры как бы замещают все формальные. Формальные и фактические параметры должны совпадать по типу и по количеству.
Параметры, передающиеся по значению
Параметры, передающиеся по значению, – это параметры, значения которых передаются в подпрограмму и не передаются из нее обратно. Перед такими параметрами ставится оператор ByVal.
Подпрограмма-функция
Подпрограмма-функция Functionявляется самостоятельной подпрограммой, которая может получать аргументы, выполнять последовательность инструкций и изменять значения своих аргументов. Подпрограмма-функция может применяться в правой части выражения, как и любая другая встроенная функция, например косинус или синус угла. Подпрограмма-функция возвращает один результат и он должен быть присвоен имени этой функции.
Синтаксис:
[Public [Private] [Static] Function Имя [(Список аргументов)] As Тип
Тело подпрограммы
Имя = Выражение
End Function
Подпрограмма-функция вызывается в выражении по своему имени, за которым следует список аргументов в скобках:
Переменная = Имя подпрограммы-функции(Список аргументов)
Пример 1
Даны действительные числа s,t. Получить значение выражения
,
где
Программный код
Option Explicit
Sub PR31()
Dim s As Double
Dim t As Double
Dim f As Double
s = Val(InputBox("Введи s"))
t = Val(InputBox("Введи t"))
f = Q(1.2, s) + Q(t, s) – Q(2 * s – 1, s * t)
MsgBox("f=" & f)
End Sub
Private Function Q(ByVal a As Double, ByVal b As Double) As Double
Q = (a^2 + b^2) / (a^2 + 2 * a * b + 3 * b^2 + 4)
End Function