#

Lägger till eller hittar skillnaden i datum-/tidsvärden och konverterar mellan lokal tid och UTC.

Beskrivning

##

Funktionen DateAdd lägger till ett antal enheter i ett datum-/tidsvärde. Resultatet är ett nytt datum-/tidsvärde. Du kan också ta bort ett antal enheter från ett datum-/tidsvärde genom att ange ett negativt värde.

Funktionen DateDiff returnerar skillnaden mellan två datum-/tidsvärden. Resultatet är ett antal enheter.

För båda funktionerna kan enheterna vara Millisekunder, Sekunder, Minuter, Timmar, Dagar, Månader, Kvartal eller År. Som standard använder båda funktionerna dagar som enheter.

Funktionen TimeZoneOffset returnerar antalet minuter mellan användarens lokala tid och UTC (Coordinated Universal Time).

Du kan använda DateAdd med TimeZoneOffset för att konvertera mellan användarens lokala tid och UTC (Coordinated Universal Time). Om du lägger till TimeZoneOffset konverteras en lokal tid till UTC, och om du subtraherar det (lägger till det negativa) konverteras det från UTC till lokal tid.

Mer information finns även i Arbeta med datum och tid.

Syntax

##

DateAdd( DateTime, Addition [, Units ] )

  • DateTime – Krävs. Det datum/tid-värde som ska användas.
  • Addition – obligatoriskt. Nummer att lägga till i DateTime i Units.
  • Units – valfritt. Typen av Units att lägga till: Millisekunder, Sekunder, Minuter, Timmar, Dagar, Månader, Kvartal eller År. Om inget annat anges används Dagar.

DateDiff( StartDateTime, EndDateTime [, Units ] )

  • StartDateTime – obligatoriskt. Start för datum-/tidsvärden.
  • EndDateTime – obligatoriskt. Slut för datum-/tidsvärden.
  • Units – valfritt. Typen av Units att lägga till: Millisekunder, Sekunder, Minuter, Timmar, Dagar, Månader, Kvartal eller År. Om inget annat anges används Dagar.

TimeZoneOffset( [ DateTime ] )

  • DateTime – valfritt. Datum-/tidsvärdet som förskjutningen ska returneras för. Som standard används aktuellt datum/tid.

Exempel

## I alla dessa exempel förutsätter vi att det aktuella datumet och tiden är 15 juli 2013, 13:02.

Enkel DateAdd

###

Formel Beskrivning Resultat
Text( DateAdd( Now(), 3 ),
"dd-mm-yyyy hh:mm" )
Lägger till tre dagar (standardenheter) till aktuellt datum och tid. "18-07-2013 13:02"
Text( DateAdd( Now(), 4, Hours ),
"dd-mm-yyyy hh:mm" )
Lägger till fyra timmar till aktuellt datum och tid. "15-07-2013 17:02"
Text( DateAdd( Today(), 1, Months ),
"dd-mm-yyyy hh:mm" )
Lägger till en månad till aktuellt datum, utan tid eftersom Today inte returnerar en tidskomponent. "15-08-2013 00:00"
Text( DateAdd( Now(), ‑30, Minutes ),
"dd-mm-yyyy hh:mm" )
Subtraherar 30 minuter från aktuellt datum och tid. "15-07-2013 12:32"

Enkel DateDiff

###

Formel Beskrivning Resultat
DateDiff( Now(), DateValue("1/1/2014") ) Returnerar skillnaden mellan de två enheterna i standardenheter för Dagar 170
DateDiff( Now(), DateValue("1/1/2014"), Months ) Returnerar skillnaden mellan de två värdena i Månader 6
DateDiff( Now(), Today(), Minutes ) Returnerar skillnaden mellan aktuellt datum och tid och endast aktuellt datum (ingen tid) i minuter. Eftersom Now är senare än Today blir resultatet negativt. -782

Konvertera till UTC

### Om du vill konvertera till UTC (Coordinated Universal Time) lägger du till TimeZoneOffset för angiven tid.

Anta till exempel att aktuellt datum och tid är 15 juli 2013, 13:02 i Pacific, sommartid (PDT, UTC-7). Använd följande för att fastställa den aktuella tiden i UTC:

  • DateAdd( Now(), TimeZoneOffset(), Minutes )

TimeZoneOffset är som standard aktuell tid, så du inte behöver skicka ett argument till den.

Visa resultatet genom att använda funktionen Text med formatet dd-mm-yyyy hh:mm, som ger 15-07-2013 20:02.

Konvertera från UTC

### Om du vill konvertera från UTC subtraherar du TimeZoneOffset (genom att lägga till det negativa) för den angivna tiden.

Anta till exempel att datum och tid för UTC är 15 juli 2013, 20:02 som är lagrat i variabeln StartTime. Om du vill justera tiden för användarens tidszon använder du:

  • DateAdd( StartTime, -TimeZoneOffset( StartTime ), Minutes )

Lägg märke till minustecknet för TimeZoneOffset för att subtrahera förskjutningen i stället för att lägga till den.

Visa resultatet genom att använda funktionen Text med formatet dd-mm-yyyy hh:mm, som ger 15-07-2013 13:02 om du befinner dig i Pacific, sommartid.