Applies ToAccess för Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Returnerar ett värde av datatypen Variant (Sträng) som innehåller ett uttryck som formaterats enligt instruktionerna i ett formatuttryck.

Varning!    Det finns ett problem med användningen av den här funktionen. Den sista måndagen i vissa kalenderår kan returneras som vecka 53 när det ska vara vecka 1. Mer information och en lösning finns i Formatera eller DatumDel-funktioner kan returnera fel veckonummer för förra måndagen i år.

Visa några exempel

Syntax

Format( uttryck [, format ] [, förstadagiveckan ] [, förstaveckapååret ] )

Syntaxen för funktionen Format har följande argument:

Argument

Beskrivning

uttryck

Obligatoriskt. Valfritt giltigt uttryck.

format

Valfritt. Ett giltigt namngivet eller användardefinierat formatuttryck.

förstadagiveckan

Valfritt. En konstant som anger veckans första dag.

förstaveckapååret

Valfritt. En konstant som anger årets första vecka.

Inställningar

Argumentet format kan använda en mängd olika inställningar, beroende på datatypen för argumentet uttryck . Läs artiklarna i tabellen nedan för mer information om giltiga uttryck.

För uttryck med den här datatypen ...

Läser du artikeln

Alla typer

Egenskapen format

Datum/tid

Formatera ett fält av typen Datum och tid

Numerisk

Formatera ett tal- eller valutafält

Text och PM

Formatera ett textfält

Ja/Nej

Egenskapen format – datatypen Ja/Nej

Argumentet förstadagiveckan har följande inställningar:

Konstant

Värde

Beskrivning

vbUseSystem

0

Använd API-inställningen NLS.

VbSunday

1

Söndag (standard)

vbMonday

2

Måndag

vbTuesday

3

Tisdag

vbWednesday

4

Onsdag

vbThursday

5

Torsdag

vbFriday

6

Fredag

vbSaturday

7

Lördag

Argumentet förstaveckapååret har följande inställningar:

Konstant

Värde

Beskrivning

vbUseSystem

0

Använd API-inställningen NLS.

vbFirstJan1

1

Börja med den vecka då den 1 januari infaller (standard).

vbFirstFourDays

2

Börja med den första veckan som omfattar minst fyra dagar på det nya året.

vbFirstFullWeek

3

Börja med den första veckan som enbart omfattar dagar på det nya året.

Anmärkningar

Om du vill formatera

Gör så här

Tal

Använd fördefinierade namngivna talformat eller skapa användardefinierade talformat.

Datum och tider

Använd fördefinierade namngivna datum- och tidsformat eller skapa användardefinierade datum- och tidsformat.

Datum- och tidserienummer

Använd datum- och tidsformat eller numeriska format.

Strängar

Skapa egna användardefinierade strängformat.

Om du försöker formatera ett tal utan att ange format ger Format funktioner som liknar funktionen Str , även om det är internationellt medvetet. Positiva tal som formaterats som strängar med Format innehåller dock inte ett inledande blanksteg som är reserverat för tecknet på värdet. de som konverteras med Str behåller det inledande blanksteget.

Om du formaterar en ickelokaliserad numerisk sträng ska du använda ett användardefinierat numeriskt format för att få det utseende du vill ha.

Obs!: Om egenskapsinställningen Kalender är gregoriansk och format anger datumformatering måste det angivna uttrycket vara gregorianskt. Om Visual Basic-egenskapsinställningen Kalender är hijri måste det angivna uttrycket vara hijri.

Om kalendern är gregoriansk ändras inte innebörden av formatuttryckssymboler. Om kalendern är Hijri har alla symboler för datumformat (till exempel dddd, mmmm, åååå) samma betydelse men gäller för Hijri-kalendern. Formatsymboler finns kvar på engelska. symboler som resulterar i textvisning (till exempel FM och EM) visar strängen (engelska eller arabiska) som är kopplad till symbolen. Intervallet för vissa symboler ändras när kalendern är Hijri.

Symbol

Område

d

1-30

dd

1-30

ww

1-51

mmm

Visar fullständiga månadsnamn (hijri-månadsnamn förkortas inte).

å

1-355

yyyy

100-9666

Exempel

Använda funktionen Format i ett uttryck    Du kan använda Format var som helst där du kan använda uttryck. Till exempel kan du använda den i en fråga som en del av ett fältalias eller i egenskapen Kontrollkälla för en textruta i ett formulär eller en rapport. I följande exempel visas ett uttryck som du kan använda i en rapports Filter-egenskap för att begränsa resultatet till poster från föregående vecka.

Format([Date],"ww")=Format(Now(),"ww")-1

I det här exemplet har rapportens datakälla ett fält som heter Date som innehåller datumet då respektive post ändrades och som används i rapporten. När du kör rapporten filtreras resultaten för att endast visa de posterna där veckan för värdet i fältet Date (Format([Date],"ww")) är lika med föregående vecka (Format(Now(),"ww")-1).

Använda funktionen Format i VBA-kod    

Obs!: I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Om du vill läsa mer om hur man använder VBA, kan du välja Info för utvecklare i listrutan bredvid Sök och sedan skriva en eller flera söktermer i sökrutan.

I det här exemplet visas olika sätt för att använda funktionen Format för att formatera värden genom att använda både namngivna format och användardefinierade format. För datumavgränsaren (/), tidsavgränsaren (:) och AM/ PM beror faktiska formaterade utdata som visas på datorn på de nationella inställningarna på datorn som koden körs på. När tider och datum visas i utvecklingsmiljön används det korta tidsformatet och det korta datumformatet i kodens språk. Vid visning genom att kod körs används det korta tidsformatet och det korta datumformatet för datorns språk, som kan skilja sig från kodens språk. I det här exemplet används språket amerikansk engelska.

MyTime och MyDate visas i utvecklingsmiljön med den aktuella systeminställningen för kort tid och kort datum.

Dim MyTime, MyDate, MyStrMyTime = #17:04:23#MyDate = #January 27, 1993#' Returns current system time in the system-defined long time format.MyStr = Format(Time, "Long Time")' Returns current system date in the system-defined long date format.MyStr = Format(Date, "Long Date")MyStr = Format(MyTime, "h:m:s")    ' Returns "17:4:23".MyStr = Format(MyTime, "hh:mm:ss AMPM")    ' Returns "05:04:23 PM".MyStr = Format(MyDate, "dddd, mmm d yyyy")    ' Returns "Wednesday,    ' Jan 27 1993".' If format is not supplied, a string is returned.MyStr = Format(23)    ' Returns "23".' User-defined formats.MyStr = Format(5459.4, "##,##0.00")    ' Returns "5,459.40".MyStr = Format(334.9, "###0.00")    ' Returns "334.90".MyStr = Format(5, "0.00%")    ' Returns "500.00%".MyStr = Format("HELLO", "<")    ' Returns "hello".MyStr = Format("This is it", ">")    ' Returns "THIS IS IT".

Använda Format med nollängdssträngar

I Microsoft Access version 2.0 och tidigare kunde du använda Format för att returnera ett värde för en nollängdssträng och en annan för ett värde. Du kunde till exempel använda ett formatuttryck såsom följande med funktionen Format för att returnera rätt strängvärde från kod:

Dim varX As VariantDim varStrX As Variant' Assign some value to varStrX and pass to Format function.varX = Format(varStrX, "@;ZLS;Null")

I version 97 och senare av Microsoft Access måste du testa separat för fallet Null och sedan returnera rätt värde baserat på resultatet. Du kan till exempel använda funktionen OOM i ett uttryck med funktionen Format enligt följande:

varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))

Den här ändringen gäller endast när du använder funktionen Format för att formatera en sträng beroende på om det är en nollängdssträng eller ett Null-värde. Andra formatuttryck som används med funktionen Format fortsätter att fungera som de gjorde i tidigare versioner.

Om du konverterar en databas från Microsoft Access version 2.0 och tidigare till Microsoft Access 2002 eller senare måste du ändra koden och testa Null-fallen separat.

Strängfunktioner och hur de används

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.