DateAdd-Funktion (Visual Basic)

Aktualisiert: November 2007

Die Funktion gibt einen Date-Wert zurück, der einen Datumswert und einen Zeitwert enthält, dem ein festgelegtes Zeitintervall hinzugefügt wird.

Public Overloads Function DateAdd( _
   ByVal Interval As DateInterval, _
   ByVal Number As Double, _
   ByVal DateValue As DateTime _
) As DateTime
' -or-
Public Overloads Function DateAdd( _
   ByVal Interval As String, _
   ByVal Number As Double, _
   ByVal DateValue As Object _
) As DateTime

Parameter

  • Interval
    Erforderlich. Wert aus der DateInterval-Enumeration oder String-Ausdruck, der das zu addierende Zeitintervall darstellt.

  • Number
    Erforderlich. Wert vom Typ Double. Gleitkommaausdruck, der die Anzahl der zu addierenden Intervalle darstellt. Number kann entweder positiv (für einen zukünftigen Zeitpunkt) oder negativ (für einen zurückliegenden Zeitpunkt) sein. Jeder Bruchteil von Number wird ignoriert.

  • DateValue
    Erforderlich. Date. Ein Ausdruck, der das Datum und die Uhrzeit angibt, zu dem bzw. der das Intervall addiert werden soll. DateValue selbst wird im aufrufenden Programm nicht geändert.

Einstellungen

Das Interval-Argument kann eine der folgenden Einstellungen haben:

Enumerationswert

Zeichenfolge

Einheit des zu addierenden Zeitintervalls

DateInterval.Day

d

Tag, auf einen ganzzahligen Wert abgeschnitten

DateInterval.DayOfYear

y

Tag, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Hour

h

Stunde, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Minute

n

Minute, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Month

m

Monat, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Quarter

q

Quartal, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Second

s

Sekunde, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Weekday

w

Tag, auf einen ganzzahligen Wert abgeschnitten

DateInterval.WeekOfYear

ww

Woche, auf einen ganzzahligen Wert abgeschnitten

DateInterval.Year

yyyy

Jahr, auf einen ganzzahligen Wert abgeschnitten

Ausnahmen

Ausnahmetyp

Fehlernummer

Bedingung

InvalidCastException

13

DateValue kann nicht in Date umgewandelt werden.

ArgumentException

5

Intervall ist ungültig.

ArgumentOutOfRangeException

9

Das berechnete Datum liegt vor 00:00:00 Uhr am 1. Januar des Jahres 1 oder nach 23:59:59 Uhr am 31. Dezember 9999.

Beachten Sie die Spalte "Fehlernummer", wenn Sie Visual Basic 6.0-Anwendungen aktualisieren, die eine unstrukturierte Fehlerbehandlung verwenden. (Sie können die Fehlernummer mit der Number-Eigenschaft (Err-Objekt) vergleichen.) Wenn möglich, sollten Sie jedoch erwägen, eine solche Fehlersteuerung durch eine Übersicht über die strukturierte Ausnahmebehandlung für Visual Basic zu ersetzen.

Hinweise

Mit der DateAdd-Funktion können Sie ein bestimmtes Zeitintervall zu einem Datum addieren oder von einem Datum subtrahieren. Sie können z. B. ein Datum berechnen, das 30 Tage in der Zukunft liegt, oder eine Uhrzeit, die 45 Minuten vor dem aktuellen Zeitpunkt liegt.

Um Tage zu DateValue hinzuzufügen, können Sie DateInterval.Day, DateInterval.DayOfYear oder DateInterval.Weekday verwenden. Diese werden als gleichwertig behandelt, da DayOfYear und Weekday keine sinnvollen Zeitintervalle sind.

Die DateAdd-Funktion gibt niemals ein ungültiges Datum zurück. Falls erforderlich, wird der Tag des berechneten Datums nach unten auf den letzten Tag des berechneten Monats im berechneten Jahr korrigiert. Im folgenden Beispiel wird zum 31. Januar ein Monat addiert:

Dim NextMonth As Date = DateAdd(DateInterval.Month, 1, #1/31/1995#)

In diesem Beispiel gibt DateAdd#2/28/1995# zurück, nicht #2/31/1995#. Wenn DateValue#1/31/1996# ist, gibt die Funktion #2/29/1996# zurück, da 1996 ein Schaltjahr ist.

Hinweis:

DateAdd verwendet die aktuelle Kalendereinstellung für die CurrentCulture-Eigenschaft der CultureInfo-Klasse im System.Globalization-Namespace. Die Standardwerte für CurrentCulture werden durch die Einstellungen in der Systemsteuerung bestimmt.

Da jeder Date-Wert von einer DateTime-Struktur unterstützt wird, geben seine Methoden Ihnen zusätzliche Möglichkeiten für die Addition von Zeitintervallen. Sie können z. B. eine Anzahl von Tagen als auf die nächste Millisekunde gerundete Dezimalzahl folgendermaßen zu einer Date-Variablen addieren:

Dim NextTime As Date = Now        ' Current date and time.
NextTime = NextTime.AddDays(3.4)  ' Increment by 3 2/5 days.

Beispiel

In diesem Beispiel wird mithilfe der DateAdd-Funktion einem vorgegebenen Datum eine bestimmte Anzahl von Monaten hinzugefügt und das daraus resultierende Datum angezeigt.

Dim Msg, Number, StartDate As String   'Declare variables.
Dim Months As Double
Dim SecondDate As Date
Dim IntervalType As DateInterval
IntervalType = DateInterval.Month   ' Specifies months as interval.
StartDate = InputBox("Enter a date")
SecondDate = CDate(StartDate)
Number = InputBox("Enter number of months to add")
Months = Val(Number)
Msg = "New date: " & DateAdd(IntervalType, Months, SecondDate)
MsgBox(Msg)

Anforderungen

Namespace:Microsoft.VisualBasic

**Modul:**DateAndTime

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Siehe auch

Referenz

DateDiff-Funktion (Visual Basic)

DatePart-Funktion (Visual Basic)

Day-Funktion (Visual Basic)

Format-Funktion

Now-Eigenschaft

Weekday-Funktion (Visual Basic)

Year-Funktion (Visual Basic)

Date-Datentyp (Visual Basic)

System