Returnerer en Variant (streng), der indeholder et udtryk, der er formateret i overensstemmelse med instruktioner, der er indeholdt i et formatudtryk.
Advarsel! Der er et problem med brugen af denne funktion. Den sidste mandag i nogle kalenderår kan returneres som uge 53, hvor den skal være uge 1. Du kan finde flere oplysninger og en løsning under Format- eller DatePart-funktioner kan returnere forkert ugenummer for sidste mandag i året. |
Syntaks
Format( udtryk [, format ] [, førsteugedag ] [, førsteuge ] )
Syntaksen for funktionen Format har disse argumenter:
Argument |
Beskrivelse |
udtryk |
Obligatorisk. Et hvilket som helst gyldigt udtryk. |
format |
Valgfrit. Et gyldigt navngivet eller brugerdefineret formatudtryk. |
førsteugedag |
Valgfrit. En konstant, der angiver den første dag i ugen. |
førsteuge |
Valgfrit. En konstant, der angiver den første uge i året. |
Indstillinger
Argumentet Format kan bruge en række forskellige indstillinger, afhængigt af datatypen for argumentet udtryk . Se de artikler, der er vist i følgende tabel, hvis du vil have mere at vide om gyldige formatudtryk.
For udtryk, der bruger denne datatype ... |
Skal du se denne artikel |
Alle typer |
|
Dato/klokkeslæt |
|
Numerisk |
|
Tekst og Notat |
|
Ja/Nej |
Argumentet førsteugedag har følgende indstillinger:
Konstant |
Værdi |
Beskrivelse |
vbUseSystem |
0 |
Brug indstillingen NLS API. |
VbSunday |
1 |
Søndag (standard) |
vbMonday |
2 |
Mandag |
vbTuesday |
3 |
Tirsdag |
vbWednesday |
4 |
Onsdag |
vbThursday |
5 |
Torsdag |
vbFriday |
6 |
Fredag |
vbSaturday |
7 |
Lørdag |
Argumentet førsteuge har følgende indstillinger:
Konstant |
Værdi |
Beskrivelse |
vbUseSystem |
0 |
Brug indstillingen NLS API. |
vbFirstJan1 |
1 |
Start med uge, hvor 1 januar forekommer (standard). |
vbFirstFourDays |
2 |
Start med den første uge, der har mindst fire dage i året. |
vbFirstFullWeek |
3 |
Start med den første hele uge i året. |
Bemærkninger
Hvis du vil formatere |
Skal du gøre følgende |
Tal |
Brug foruddefinerede, navngivne numeriske formater, eller opret brugerdefinerede numeriske formater. |
Datoer og klokkeslæt |
Brug foruddefinerede, navngivne dato- og klokkeslætsformater, eller opret brugerdefinerede dato- og klokkeslætsformater. |
Serienumre for dato- og klokkeslæt |
Brug formater for dato og klokkeslæt eller numeriske formater. |
Strenge |
Opret dine egne brugerdefinerede strengformater. |
Hvis du forsøger at formatere et tal uden at angive format, giver Format funktionalitet, der svarer til funktionen Str , selvom den er internationalt opmærksom. Positive tal, der er formateret som strenge ved hjælp af Format , omfatter dog ikke et foranstillet mellemrum, der er reserveret til værdiens fortegn. de konverterede ved hjælp af Str bevarer det foranstillede mellemrum.
Hvis du formaterer en ikke-lokaliseret numerisk streng, skal du bruge et brugerdefineret talformat for at sikre, at du får det ønskede udseende.
Bemærk!: Hvis egenskabsindstillingen for Kalender er Gregoriansk, og format angiver datoformatering, skal det angivne udtryk være gregoriansk. Hvis Visual Basic-egenskabsindstillingen for Kalender er Hijri, skal det angivne udtryk være hijri.
Hvis kalenderen er gregoriansk, er betydningen af symboler for formatudtryk uændret. Hvis kalenderen er Hijri, har alle datoformatsymboler (f.eks. dddd, mmmm, åååå) samme betydning, men gælder for Hijri-kalenderen. Formatsymboler forbliver på engelsk. symboler, der resulterer i tekstvisning (f.eks. AM og PM), viser den streng (engelsk eller arabisk), der er knyttet til det pågældende symbol. Området med visse symboler ændres, når kalenderen er Hijri.
Symbol |
Område |
d |
1-30 |
dd |
1-30 |
ww |
1 – 51 |
mmm |
Viser fulde månedsnavne (hijri-månedsnavne har ingen forkortelser). |
y |
1-355 |
åååå |
100-9666 |
Eksempler
Brug funktionen Formatér i et udtryk Du kan bruge Format, hvor du kan bruge udtryk. Du kan f.eks. bruge den i en forespørgsel som en del af et feltalias eller i egenskaben Kontrolelementkilde for et tekstfelt i en formular eller rapport. Følgende eksempler viser et udtryk, du kan bruge i en rapports Filter-egenskab til at begrænse outputtet til poster fra den forrige uge.
Format([Dato],"ww")=Format(Nu(),"ww")-1
I dette eksempel har rapportens postkilde et felt med navnet Dato, der indeholder den dato, hvor hver enkelt post er blevet ændret, og som bruges i rapporten. Når du kører rapporten, filtreres resultaterne for kun at vise de poster, hvor ugen for værdien i feltet Dato (Format([Dato],"ww")) er lig med den forrige uge (Format(Nu(),"ww")-1).
Brug funktionen Format i VBA-kode
Bemærk!: Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.
Dette eksempel viser forskellige anvendelser af funktionen Format til at formatere værdier ved hjælp af både navngivne formater og brugerdefinerede formater. For datoseparatoren (/), klokkeslætsseparatoren (:) og AM/PM-konstanten afhænger det faktisk formaterede output, der vises af dit system, af indstillingen for landestandard på den computer, hvor koden kører. Når klokkeslæt og datoer vises i udviklingsmiljøet, bruges det korte klokkeslætsformat og det korte datoformat for kodens landestandard. Når det vises ved at køre kode, bruges det korte klokkeslætsformat og det korte datoformat for systemets landestandard, hvilket kan være forskelligt fra kodens landestandard. I dette eksempel, antages landestandarden at være Engelsk (USA).
MyTimeog MyDate vises i udviklingsmiljøet ved hjælp af indstillingen for det korte klokkeslætsformat og indstillingen for det korte datoformat for det aktuelle system.
Dim MyTime, MyDate, MyStr
MyTime = #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".
Ved hjælp af Format med tomme strenge
I Microsoft Access version 2.0 og tidligere kan du bruge funktionen Format til at returnere én værdi for en streng af længden nul og en anden for en værdi. Du kan f.eks. bruge et formatudtryk som følgende med funktionen Format til at returnere den relevante strengværdi fra kode:
Dim varX As Variant
Dim varStrX As Variant ' Assign some value to varStrX and pass to Format function. varX = Format(varStrX, "@;ZLS;Null")
I Microsoft Access version 97 og nyere skal du teste separat for Null-sagen og derefter returnere den relevante værdi baseret på resultatet. Du kan f.eks. bruge funktionen IIf i et udtryk med funktionen Format , f.eks. følgende:
varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))
Denne ændring gælder kun, når du bruger funktionen Format til at formatere en streng, afhængigt af om det er en tom streng eller en Null-værdi. Andre formatudtryk, der bruges sammen med funktionen Format, fungerer fortsat, som de gjorde i tidligere versioner.
Hvis du konverterer en database fra Microsoft Access version 2.0 og ældre til Microsoft Access 2002 eller nyere, skal du ændre koden for at teste særskilt for Null-tilfældet.