• ベストアンサー

Functionプロシージャではなぜプロシージャ名=○○という文章が多いのか

VBAを初めて使っています。 勉強してはいるのですが、混乱していて あまり理解できていません。 「Functionプロシージャとsubプロシージャの違いは、戻り値を返すか返さないか」という事までは知識としてわかったのですが、 ・・・サンプルプログラムをながめてみても、どう使えば良いのかまだわかりません。 大変愚問かと思われ申し訳ないのですが、Functionプロシージャの中で、 プロシージャ名=○○ というかたちがよく見られるのはなぜでしょうか。 Function abc abc="hello" というような。 多分これがわかればFunctionプロシージャの使い方が わかってくるのでは、と思っているのですが・・・。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

Function プロシージャから値を返すには、値を Function プロシージャ名に代入します とヘルプにあります。 つまり、関数としての戻り値を設定するためです。 Function プロシージャで戻り値を設定しないのは、行儀の悪いプログラムですが、 Function 名に値を設定しない場合の規定値についてもヘルプに書かれている通りです。 なので、設定しないというプログラムもあるだろうと思います。

noname#101292
質問者

補足

ありがとうございます。 Functionプロシージャの名前は、 他のプロシージャから呼び出される際などに、関数になるのですね。 いや、呼び出されるとかいう問題じゃなく、もう記述されたときから関数として設定されるって事なのかな。 Functionプロシージャはそれ自体が関数化する・・・のでしょうか?

その他の回答 (2)

noname#79209
noname#79209
回答No.3

> Function abc > abc="hello" の場合、 MsgBox abc & " ueno88さん" とすれば、「hello ueno88さん」と表示されますが、 Function abc の中に「abc="hello"」が無ければ、 MsgBox abc & " ueno88さん" は「 ueno88さん」としか表示されません。

noname#101292
質問者

補足

ありがとうございます。 中で値を設定しないと、空っぽになっちゃうんですね。 Functionプロシージャの意味が何となく、わかって来たような・・・。

noname#20377
noname#20377
回答No.1

http://www.atmarkit.co.jp/fdotnet/vb6tonet2/vbnet2_03/vbnet2_03_01.html >関数の戻り値は、関数名への代入によって決定される と決まっているから

noname#101292
質問者

補足

ありがとうございます。 基本的なことなんでしょうねぇ~。 ・・・理解していませんでした・・・。

関連するQ&A