• ベストアンサー

Optional について

エクセルのvbaエキスパートのスタンダードの問題でわからないのがあります。 Sub M_Proc ()  Dim a As Long  a = F_Proc(3)  MsgBox a End Sub Function F_Proc(Optional x As Long = 5) As Long  F_Proc = x * 2 End Function というコードで 質問1  Optional はどういう意味でしょうか? 質問2 Optional x As Long = 5 となっているのに xには3が代入されています。 この5は意味がないのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

ヘルプをご覧下さい 以下抜粋 Optional 省略可能です。 指定した引数が省略可能であることを示します。 このキーワードを指定した場合、 引数 arglist のそれ以降の引数も省略可能でなければならず、 すべてキーワード Optional を付けて宣言する必要があります。 キーワード ParamArray を使った場合は、 どの引数に対してもキーワード Optional は指定できません。 つまり今回は省略した場合は、5 が適用されて 指定した場合はその値3が渡されるということです。

bmgjtu
質問者

お礼

分かりやすい説明ありがとうございました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

何でも質問せずとも、Googleで「Optionalキーワード」「VBA Optional」]照会すれば解説が沢山出るよ。基礎的な、定義みたいな質問はWEB照会してからにしたほうが良い。 http://officetanaka.net/excel/vba/statement/Function.htm http://www.relief.jp/itnote/archives/001832.php

bmgjtu
質問者

お礼

ありがとうございました。

関連するQ&A