|
▼タルジャ さん:
おはようございます。
>パラメータ(Retcode)がよくわかりません。
別の例で・・・。
新規ブックの標準モジュールに
Sub test()
MsgBox "タルジャ さん、おはようございます"
End Sub
というコードを実行すると、メッセージボックスに体裁よく指定された
「タルジャ さん、おはようございます」という文字列が表示されますよね?
これ、私たちは、MsgBox 〜 の一行でメッセージボックスを表示させていますが、
MsgBoxもVBAではないですが、既成の「プログラム」です。
中身は表示文字列の長さによって表示位置のバランスを取ったりで結構のプログラムが作られているはずです。
こういう便利なものがあるので、それを私たちは、MsgBox 〜 の一行でメッセージを表示できています。
この時、MsgBoxに渡している「タルジャ さん、おはようございます」という文字列をパラメータとか
引数(アーギュメント)等と呼んでいます。
厳密には、規定がありますが、忘れました。
これと同様に私たちが作成するVBAコードにもパラメータを付けることが出来ます。
今、四則演算を行なうプログラムを考えます。
標準モジュールに
Sub 四則演算(x As Variant, y As Variant, enzan As Variant, ans As Variant)
'四則演算を行なう
'input : x,y 四則演算を行なう二つの数値
' : enzan 演算の種類 1 足し算 2 引き算 3 掛け算 4 割り算
'output : ans 演算の結果
Select Case enzan
Case 1
ans = x + y
Case 2
ans = x - y
Case 3
ans = x * y
Case 4
ans = x / y
End Select
End Sub
これは、簡単例題ですが、
このように作っておくと、四則演算がしたければ、どのプログラムからでも呼び出すことが出来ます。
(実際には、y=0で割り算すると、エラーになるので、対処が必要)。
Sub test1()
Dim a As Long
Dim b As Long
Dim 答え As Long
a = 10
b = 2
Call 四則演算(a, b, 1, 答え)
MsgBox a & " + " & b & " = " & 答え
Call 四則演算(a, b, 2, 答え)
MsgBox a & " - " & b & " = " & 答え
Call 四則演算(a, b, 3, 答え)
MsgBox a & " × " & b & " = " & 答え
Call 四則演算(a, b, 4, 答え)
MsgBox a & " ÷ " & b & " = " & 答え
End Sub
test1を実行すれば、指定するパラメータによって、四則演算を行なってくれます。
パラメータを使う方法が情報をプロシジャーから、プロシジャーに渡す方法としては、一番良い方法とされています。
こんな説明でどうでしょうか?
|
|