- ベストアンサー
Functionプロシージャではなぜプロシージャ名=○○という文章が多いのか
VBAを初めて使っています。 勉強してはいるのですが、混乱していて あまり理解できていません。 「Functionプロシージャとsubプロシージャの違いは、戻り値を返すか返さないか」という事までは知識としてわかったのですが、 ・・・サンプルプログラムをながめてみても、どう使えば良いのかまだわかりません。 大変愚問かと思われ申し訳ないのですが、Functionプロシージャの中で、 プロシージャ名=○○ というかたちがよく見られるのはなぜでしょうか。 Function abc abc="hello" というような。 多分これがわかればFunctionプロシージャの使い方が わかってくるのでは、と思っているのですが・・・。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Function プロシージャから値を返すには、値を Function プロシージャ名に代入します とヘルプにあります。 つまり、関数としての戻り値を設定するためです。 Function プロシージャで戻り値を設定しないのは、行儀の悪いプログラムですが、 Function 名に値を設定しない場合の規定値についてもヘルプに書かれている通りです。 なので、設定しないというプログラムもあるだろうと思います。
その他の回答 (2)
> Function abc > abc="hello" の場合、 MsgBox abc & " ueno88さん" とすれば、「hello ueno88さん」と表示されますが、 Function abc の中に「abc="hello"」が無ければ、 MsgBox abc & " ueno88さん" は「 ueno88さん」としか表示されません。
補足
ありがとうございます。 中で値を設定しないと、空っぽになっちゃうんですね。 Functionプロシージャの意味が何となく、わかって来たような・・・。
http://www.atmarkit.co.jp/fdotnet/vb6tonet2/vbnet2_03/vbnet2_03_01.html >関数の戻り値は、関数名への代入によって決定される と決まっているから
補足
ありがとうございます。 基本的なことなんでしょうねぇ~。 ・・・理解していませんでした・・・。
補足
ありがとうございます。 Functionプロシージャの名前は、 他のプロシージャから呼び出される際などに、関数になるのですね。 いや、呼び出されるとかいう問題じゃなく、もう記述されたときから関数として設定されるって事なのかな。 Functionプロシージャはそれ自体が関数化する・・・のでしょうか?