2

日付の列があります。これらは、行内の他のデータとともに、行ごとに 1 つずつオブジェクトに組み込まれます。

ただし、日付列の一部のセルは空です。テストとして、日付変数を作成し、その値を空のセルの値として設定します。日付の新しい値をメッセージボックスで確認したところ、「午前 12 時」であることがわかりました。この値を表す定数が VBA に組み込まれているので、次のようなテストを実行できます。

If myDate = vbNullDate Then
4

3 に答える 3

7

私は時々この問題に遭遇します。私は通常、以下を行います。

dim d as date
if d = cdate(0) then msgbox "Default value" 
于 2012-06-29T11:50:29.527 に答える
3

ローカルの Date 変数のデフォルト値は次のようです。

Saturday, December 30, 1899 12:00:00 AM

この手順に基づいて:

Sub testdate()

Dim d As Date

Debug.Print Format$(d, "Long Date") & " " & Format$(d, "Long Time")

End Sub

任意の変数タイプのデフォルト値を確認するには、そのタイプの変数を宣言してから、その値を出力します。

Sub testint()

Dim d As Integer

Debug.Print d

End Sub
于 2012-06-28T18:19:08.880 に答える
1

andy holadayが質問の下のコメントで言ったように、日付のデフォルト値は単に0です。愚かな私:/

于 2012-06-28T06:02:19.577 に答える