ВУЗ:
Составители:
92
Pro21 вводит данные в ячейку А1 первого рабочего листа и вызывает в строке 5
подпрограмму DisplayMessage, которая выводит на экран сообщение и возвращает
управление Рro21.
3.9.4. Передача данных при вызове подпрограммы
Вызывая подпрограмму, Вы вправе передать в нее переменные или значения.
Эта возможность еще более расширяет область применения подпрограмм, позволяя
выполнять одни и те же действия с различными исходными данными. Рассмотрим в
качестве примера подпрограмму DisplayMessage. Сейчас она выводит сообщение
«Data has been entered» (Были введены данные).
Предположим, что кроме этого мы хотим знать, какое именно значение было
введено, например «Было введено число 500». Проще всего передать в
подпрограмму DisplayMessage аргумент. Это можно сделать двумя способами.
Sub Pro22()
Dim R1 As Range
Set R1 = Worksheets(1).Range("A1")
R1.Value = 500
DisplayMessage2 R1.Value
End Sub
Sub DisplayMessage2(V1)
MsgBox "The value " & V1 & " has been entered."
End Sub
Здесь есть два интересных момента. Во-первых, обращение к подпрограмме
DisplayMessage2 в Рro22 содержит аргумент R1.Value, во-вторых, в первой строке
DisplayMessage2 в круглых скобках задано имя переменной V1. Она принимает
значение аргумента, указанного в вызове подпрограммы DisplayMessage2, и затем
используется для вывода соответствующего значения в информационном окне.
Второй способ состоит в том, чтобы объявить V1 переменной уровня модуля
(проекта), тогда она будет доступна во всех подпрограммах модуля (проекта), в том
числе и в подпрограмме DisplayMessage2:
Public V1 As Variant
Sub Pro23()
Dim R1 As Range
Set R1 = Worksheets(1).Range("A1")
R1.Value = 500
V1 = R1.Value
DisplayMessage2
End Sub
Sub DisplayMessage2()
MsgBox "The value " & V1 & " has been entered."
End Sub
Страницы
- « первая
- ‹ предыдущая
- …
- 91
- 92
- 93
- 94
- 95
- …
- следующая ›
- последняя »
