Vraća tip podataka Varijanta (Niska) koji sadrži izraz oblikovan na osnovu uputstava sadržanih u izrazu formata.
Upozorenje Postoji problem sa korišćenjem ove funkcije. Poslednji ponedeljak u nekim kalendarskih godina može da se vrati kao sedmica 53 kada bi trebalo da bude 1. sedmica. Dodatne informacije i privremeno rešenje potražite u članku Funkcije Format ili DatePart mogu da vrate pogrešan broj sedmice za prošli ponedeljak u godini. |
Sintaksa
Format( izraz [, format ] [, prvidanusedmici ] [, prvasedmicaugodini ] )
Sintaksa funkcije Format ima sledeće argumente:
Argument |
Opis |
expression |
Obavezno. Bilo koji važeći izraz. |
format |
Opcionalno. Važeći imenovani ili korisnički definisan izraz formata. |
prvi dan sedmice |
Opcionalno. Tabela konstanta koja navodi prvi dan u sedmici. |
prvasedmica godine |
Opcionalno. Konstanta koja navodi prvu sedmicu u godini. |
Postavke
Argument formata može da koristi različite postavke, u zavisnosti od tipa podataka argumenta izraza . Pogledajte članke navedene u sledećoj tabeli za više informacija o važećim izrazima formata.
Za izraze koji koriste ovaj tip podataka... |
Pogledajte članak |
Bilo koji tip |
|
Datum/vreme |
|
Numerički |
|
Tekst i memorandum |
|
Da/ne |
Argument prvog dana sedmice ima sledeće postavke:
Konstanta |
Vrednost |
Opis |
vbUseSystem |
0 |
Koristite postavku NLS API-ja. |
VbSunday |
1 |
Nedelja (podrazumevano) |
vbMonday |
2 |
ponedeljak |
vbTuesday |
3 |
Utorak |
vbWednesday |
4 |
sreda |
vbThursday |
5 |
četvrtak |
vbFriday |
6 |
petak |
vbSaturday |
7 |
subota |
Prvih sedmica argumenta godine ima sledeće postavke:
Konstanta |
Vrednost |
Opis |
vbUseSystem |
0 |
Koristite postavku NLS API-ja. |
vbFirstJan1 |
1 |
Počnite sa sedmicom u kojoj se desio 1. januar (podrazumevano). |
vbFirstFourDays |
2 |
Počnite od prve sedmice koja ima najmanje četiri dana u godini. |
vbFirstFullWeek |
3 |
Počnite sa prvom punom sedmicom u godini. |
Napomene
Za oblikovanje |
Uradi ovo |
Brojevi |
Koristite unapred definisane imenovane numeričke formate ili kreirajte korisnički definisane numeričke formate. |
Datumi i vremena |
Koristite unapred definisane imenovane formate datuma/vremena ili kreirajte korisnički definisane formate datuma/vremena. |
Redni brojevi datuma i vremena |
Koristite formate datuma i vremena ili numeričke formate. |
Niske |
Kreirajte sopstvene korisnički definisane formate niske. |
Ako pokušate da oblikujete broj bez navođenja formata, Format obezbeđuje funkcionalnost sličnu funkciji Str , iako je međunarodno svesna. Međutim, pozitivni brojevi oblikovani kao niske pomoću formata ne uključuju razmak na početku koji je rezervisan za znak vrednosti; one konvertovane pomoću funkcije "Str" zadržavaju razmak na početku.
Ako oblikujete numeričku nisku koja nije lokalizovana, trebalo bi da koristite korisnički definisan numerički format da biste se uverili da dobijate željeni izgled.
Napomena: Ako je postavka svojstva Kalendar gregorijanski, a format navodi oblikovanje datuma, navedeni izraz mora biti gregorijanski. Ako je postavka svojstva Visual Basic Calendar Hidžra, navedeni izraz mora da bude Hidžra.
Ako je kalendar gregorijanski, značenje simbola za oblikovanje izraza je nepromenjeno. Ako je kalendar hidžra kalendar, svi simboli formata datuma (na primer, dddd, mmmm, yyyy) imaju isto značenje, ali se primenjuju na Hidžra kalendar. Simboli oblikovanja ostaju na engleskom; simboli koji za rezultat imaju prikaz teksta (na primer AM i PM) prikazuju nisku (engleski ili arapski) povezanu sa tim simbolom. Opseg određenih simbola menja se kada je kalendar Hidžra kalendar.
Simbol |
Opseg |
d |
1-30 |
dd |
1-30 |
ww |
1-51 |
mmm |
Prikazuje puna imena meseci (hidžra imena meseci ne imaju skraćenica). |
y |
1-355 |
yyyy |
100-9666 |
Primeri
Korišćenje funkcije "Format" u izrazu Format možete da koristite gde god možete da koristite izraze. Na primer, možete da ga koristite u upitu kao deo pseudonima polja ili u svojstvu Izvor kontrole okvira za tekst u obrascu ili izveštaju. Sledeći primeri pokazuju izraz koji možete da koristite u svojstvu filtera izveštaja da biste ograničili izlaz na zapise iz prethodne sedmice.
Format([Datum],"ww")=Format(Now(),"ww")-1
U ovom primeru izvor zapisa izveštaja ima polje pod imenom "Datum" koje sadrži datum izmene svakog određenog zapisa i koje se koristi u izveštaju. Kada pokrenete izveštaj, njegovi rezultati se filtriraju da bi se prikazali samo oni zapisi u kojima je sedmica za vrednost u polju "Datum" (Format([Datum],"ww")) jednaka prethodnoj sedmici (Format(Now(),"ww")-1).
Korišćenje funkcije Format u VBA kodu
Napomena: Primeri koji slede pokazuju upotrebu ove funkcije u Visual Basic for Applications (VBA) modulu. Za više informacija o radu sa VBA modulom izaberite stavku Referenca razvojnog programera sa padajuće liste pored stavke Pretraga i unesite termine u polje za pretragu.
Ovaj primer prikazuje razne upotrebe funkcije Format za oblikovanje vrednosti pomoću imenovanih formata i korisnički definisanih formata. Za znak za razdvajanje datuma (/), znak za razdvajanje vremena (:) i AM/ PM literal, stvarni oblikovani izlaz koji vaš sistem prikazuje zavisi od postavki lokalnog standarda računara na kojem je pokrenut kôd. Kada su vremena i datumi prikazani u razvojnom okruženju, koriste se kratki format vremena i kratki format datuma lokalnog standarda koda. Kada se prikazuju pokretanjem koda, koriste se kratki format vremena i kratki format datuma lokalnog standarda sistema, koji se mogu razlikovati od lokalnog standarda koda. U ovom primeru pretpostavlja se lokalni standard na engleskom jeziku SAD.
MyTime i MyDate prikazuju se u razvojnom okruženju pomoću trenutne sistemske postavke kratkog vremena i kratkih postavki datuma.
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".
Korišćenje formata sa niskama nulte dužine
U programu Microsoft Access verzije 2.0 i starijim verzijama možete da koristite funkciju Format da biste vratili jednu vrednost za niska dužine nula drugu za vrednost. Na primer, možete da koristite izraz formata kao što je sledeći sa funkcijom Format da biste vratili odgovarajuću vrednost niske iz koda:
Dim varX As Variant
Dim varStrX As Variant ' Assign some value to varStrX and pass to Format function. varX = Format(varStrX, "@;ZLS;Null")
U microsoft Access verzijama 97 i novijim verzijama morate da testirate zasebno za slučaj Null , a zatim da dobijete odgovarajuću vrednost na osnovu rezultata. Na primer, funkciju IIf možete da koristite u izrazu sa funkcijom Format , kao što je sledeće:
varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))
Ova promena se primenjuje samo kada koristite funkciju Format za oblikovanje niske u zavisnosti od toga da li je u u polju niska nulte dužine ili vrednost Null. Drugi izrazi za oblikovanje koji se koriste sa funkcijom Format nastavljaju da funkcionišu kao u prethodnim verzijama.
Ako konvertujete bazu podataka iz programa Microsoft Access verzije 2.0 i starije verzije u Microsoft Access 2002 ili noviju verziju, morate da promenite kôd da biste zasebno testirali slučaj Null.