• ベストアンサー

Optional の日付型の引数の初期値

Sub aaa( Optional ByVal aDateValue As Date = Date.MinValue) とすると、 = Date.MinValue の所で、定数式が必要ですというエラーがでました。 エラーの意味はわかるのですが、 では、Date.MinValueの部分をどう直せばいいのかわからず 行き詰ってしまいました もしよろしければご教授いただけるとありがたいです よろしくお願いします。

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

  • ベストアンサー
  • tom11
  • ベストアンサー率53% (134/251)
回答No.1

ここ見ると http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi?print+200406/04060158.txt Sub f(Optional ByVal d As Date = Nothing) End Sub でいいような、 これだと、エラーの波線は、出ないみたいですよ。

nak777r
質問者

お礼

ありがとうございます。 教えていただき、さらに調べてまで頂いて真に恐縮ですが、 Optional ByVal aDateValue As Date = #12:00:00 AM# とする事で自己解決しました どうもありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 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は意味がないのでしょうか? よろしくお願いします。

  • vb.net 今日の日付を取得

    vb.net 今日の日付を取得 vbaの Sub vba() MsgBox Date End Sub をvbでやるとどうなるのでしょう? Private Sub Button1_Click(ByVal s MessageBox.Show date End Sub だと、 エラー 1 'Date' は型です。有効な式ではありません。 エラー 2 メソッドの引数は、かっこで囲む必要があります。 エラー 3 '.' が必要です。 と、3つのエラーになります。 ご教授よろしくお願い致します。

  • 定数にFullNameは使えないのですか?

    アクセスで、 Sub aaa() Const sPath As String = CurrentProject.FullName MsgBox sPath End Sub をすると、「定数式が必要です。」問われるのですが、上記のように定数に自身のfaiある名を入れたいのですが、無理なのでしょうか?

  • スレッドで Byref の引数を渡したい場合

    VB2005 の初心者です。 スレッドに Byref の引数を渡すやり方が分かりません。 Byval だとエラーは出ないのですが、 Byref だとどうしてもエラーが消えません。 ソースは下記です。 Private CDF As clsCDF Public Class clsCDF Public LOOP1 As clsLoop1 Public LOOP2 As clsLoop2 End Class Protected Overrides Sub OnStart(ByVal args() As String) Thread = New Thread(AddressOf ABC) Thread.Start(CDF) End Sub Private Sub prvABC ( ByRef CDF As Object ) End Sub 何かヒントになることでも良いので、 皆様の知恵をお借りできれば幸いです。 よろしくお願い致します。

  • コマンドライン引数について

    フォームの中にボタン(button1)があり、ボタンを押すと別のアプリケーションを起動するようなプログラムを作っています。 別アプリケーションを起動するのに次のようにShell関数を使ってコマンドライン引数"A"を渡していますが、     Shell("Test.exe A", AppWinStyle.NormalFocus) アプリケーションの終了を確認する必要があり、ProcessコンポーネントのExitedイベントを利用したいので、Shell関数を止めて以下のようなコードにしたいと思っています。 Private Sub Button1_Click(ByVal sender As System.Object, _             ByVal e As System.EventArgs) Handles Button1.Click     Process1.StartInfo.FileName = "Test.exe"     Process1.Start() End Sub Private Sub Process1_Exited(ByVal sender As System.Object, _             ByVal e As System.EventArgs) Handles Process1.Exited     '(ここにアプリケーション終了時の処理コードを記述) End Sub このとき、コマンドライン引数を渡すにはどのようにすればよいでしょうか? どなかたご教授いただけると助かります。どうぞよろしくお願い致します。

  • エクセルVBA イベントプロシージャに引数を渡せま

    お世話になります。 エクセル2003/XP 使用です。 イベントプロシージャに引数を渡せまるかどうか教えていただけますでしょうか? 下記のコード中の変数mysheetnameを ユーザーフォーム、→ CommandButton1のプロシージャに 引数として渡して行きたいのですが、 実行すると、一番最初のWorkbook_SheetBeforeRightClickの時点で、 コンパイルエラー:  プロシージャの宣言が、イベントまたはプロシージャの定義と一致していません。 とエラー表示されます。 イベントプロシージャに引数を渡すことはできますでしょうか? ---------- ThisWorkBook内 ---------- Public mysheetname As String Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) mysheetname = ActiveSheet.Name UserForm1.Show (mysheetname)     '←変数mysheetnameの値をユーザーフォームに渡したい。 End Sub ---------- ユーザーフォーム ---------- Private Sub UserForm_Initialize(ByVal mysheetname As String ) 処理 End Sub Private Sub CommandButton1_Click(ByVal mysheetname As String ) 処理 End Sub ’--------- ここまで 引数について少し理解し始めたばかりの者です。 よろしくお願いします。

  • .NET VB の引数についてお伺いさせて下さい。

    最近、VBのコーティングを始めました。 ビルドを実行しても、エラーが出る訳ではないのですが、理解を深めたいので一つご教授していただければ、幸いです。^^ ファンクションの構文なんですが、 アクセス修飾子 Function 任意のファンクション名(第一引数,第二引数)… Private Function Func_Name (Byval sender As System.object, _ Byval e As System.EventArgs ) と記述している方はよくいらっしゃると思います。疑問なのは、第2引数の e です。この小文字には、意味があるのでしょうか? 引数名は自由であると思いますが、参考書などによくこの小文字が入っているのが、気になります。  どなたか、ご存知の方いらっしゃいましたら、お手数ですがご教授いただけませんでしょうか?^^;

  • Form内関数のパラメタについて VB6.0

    現在、他人の作成したVBプログラムを解析しているのですが、 どなたかご存知でしたらご教授願います。 画面の初期表示時の処理(Form_Load)内でPrivate Subで関数処理を 行っています。 仮にaaaという名称だった場合、 Private Sub From_Load() … aaa (0) End Sub とした時に、実際のaaa側は Public Sub aaa(Optional Mode As Integer=-1, Optional Index As Integer=-1) … End Sub とあった場合、Form_Load内でaaaに渡している(0)の値は、 "aaa側の第1パラメタであるModeに0を渡している" と言う解釈で合っていますか? また、この時のIndexパラメタには-1が設定されていると言う解釈で 合ってますでしょうか? VBはあまり良くわからずに悪戦苦闘しています。 すみませんがよろしくお願いします。

  • 「タイプ初期化子が例外をスローしました」エラー何?

    ネット検索で調べましたが、どうしてもわからないので、質問いたします。 VB2010ですが、デバッグで起動すると「タイプ初期化子が例外をスローしました」というエラーが出てしまい、プログラムが起動しません。 ご教授のほどよろしくお願いいたします。 1.スタートアップフォーム    ○frmMENU    ○LOADするときに標準モジュールを呼び出します。     その呼び出し文でエラーになります。 Private Sub frmMENU_Load(ByVal eventSender As System.Object, ByVal eventArgs As  System.EventArgs) Handles MyBase.Load gINIT()  ← ここでエラーになります Me.Text = gSysName Show() End Sub 2.標準モジュール Public Sub gINIT() gSysName = "システム" DS = "Provider=""Microsoft.Jet.OLEDB.4.0"";" DS &= "Data Source=""" gMDB = "C:\MDB\ABC.MDB""" End Sub

  • ActiveXDLL関数の引数ByRefでの呼び出し

    例えばActiveXDLL関数 Sub func1(ByRef lP1 As Long) lP1 = 11 End Sub があるとします。これをASP側で呼び出そうとすると ii = objXX.func1(lP1)’このように エラー タイプ Microsoft VBScript 実行時エラー (0x800A000D) 型が一致しません。: 'objXX.func1' /login.asp, line 156 と出てしまいます Sub func1(ByVal lP1 As Long) だと正常に動くようです。これだと意味がありませんが。 引数がByRefの時はASP側をどのように記述したらよいのでしょうか?