こんにちは。VB6の環境で開発している初心者です。
私の理解では、戻り値があるものはFunction、ないものはSubを利用すると思っています。Functionを使うと、戻り値が1個しか返せないように見受けられますが、2個返すことは可能でしょうか?ほかに何かいいアイデアがないかなーとも考えているのですが思いつきません。よろしくお願いします。
Function内で「全体宣言の変数」に代入
呼び出したSubでその変数を参照
要はフラグ
戻り値にしたいものが同じ型なら、配列にするという方法もあります。
Private Sub Command1_Click()
Dim n() As Integer
n = test(1, 2)
MsgBox n(0)
MsgBox n(1)
End Sub
Private Function test(a As Integer ,b As Integer) As Integer()
Dim x(1) As Integer
x(0) = a + b
x(1) = a - b
test= x
End Function
通ってみたさん、LESIAさん、ありがとうございます。このFunctionはいろいろなところから呼び出されるので、全体変数では問題が発生するので、LESIAさんの方法を利用することにしました。早々のご解答ありがとうございました。
参照渡しでは駄目なのかな?
Functionの型宣言自体を構造体にしてしまうといぅ手もありますね。
ツイート | ![]() |