26

したがって、関数=Now()....これを使用して、時刻ではなく日付のみを取得する方法はありますか?

それとも、このアイデアのための機能だけがありますか?

4

6 に答える 6

34

日付関数があります。

于 2010-06-24T01:13:16.130 に答える
12

VBAの日付は単なる浮動小数点数であり、整数部分は日付を表し、小数部分は時間を表します。したがって、Datetlaytonが言うように(現在の日付を取得するために)関数を使用することに加えて、日付値を整数にキャストして、任意の日付から日付部分を取得することもできますInt(myDateValue)

于 2010-06-24T01:22:45.670 に答える
11
DateValue(CStr(Now()))

それは私が見つけた中で最高です。日付を文字列として既に持っている場合は、次のようにすることができます。

DateValue("12/04/2012 04:56:15")

また

DateValue(*DateStringHere*)

これが誰かを助けることを願っています...

于 2012-08-08T11:16:13.903 に答える
5

文字列では機能しない関数を作成したいと思います。

'---------------------------------------------------------------------------------------
' Procedure : RemoveTimeFromDate
' Author    : berend.nieuwhof
' Date      : 15-8-2013
' Purpose   : removes the time part of a String and returns the date as a date
'---------------------------------------------------------------------------------------
'
Public Function RemoveTimeFromDate(DateTime As Date) As Date


    Dim dblNumber As Double

    RemoveTimeFromDate = CDate(Floor(CDbl(DateTime)))

End Function

Private Function Floor(ByVal x As Double, Optional ByVal Factor As Double = 1) As Double
    Floor = Int(x / Factor) * Factor
End Function
于 2013-08-15T08:03:23.967 に答える
3

Format $(Now()、 "Short Date")または任意の日付形式を使用することもできます。この関数は日付を文字列として返すため、Date()を使用する方が適切な方法であることに注意してください。

于 2010-06-24T01:20:07.033 に答える
1

この関数をモジュールに貼り付けて、数式のように使用します

Public Function format_date(t As String)
    format_date = Format(t, "YYYY-MM-DD")
End Function

たとえば、セルA1でこの数式を適用します

=format_date(now())

YYYY-MM-DD形式で返されます。必要に応じて、任意の形式(年月日)を変更します。

于 2016-04-05T08:27:13.797 に答える