Variant (karakterlánc) értéket ad eredményül, amely egy a formátumkifejezésben megadott utasításnak megfelelő kifejezést tartalmaz.
Figyelem Probléma merült fel a függvény használatával kapcsolatban. Egyes naptári évek utolsó hétfője az 53. hét, amikor az 1. hétnek kell lennie. További információkért és kerülő megoldásért lásd: A Format vagy a DatePart függvény nem a megfelelő heti számot adja vissza a múlt hétfőre vonatkozóan az év során. |
Szintaxis
Format( kifejezés [, formátum ] [, hét_első_napja ] [, év_első_hete ] )
A Format függvény argumentumai a következők:
Argumentum |
Leírás |
kifejezés |
Kötelező. Bármilyen érvényes kifejezés. |
formátum |
Nem kötelező. Egy érvényes elnevezett vagy felhasználó által definiált formázási kifejezés. |
hét_első_napja |
Nem kötelező. A hét első napját megadó állandó. |
év_első_hete |
Nem kötelező. Az év első hetét megadó állandó. |
Beállítások
A formátumargumentum a kifejezésargumentum adattípusától függően számos beállítást használhat. Az érvényes formátumkifejezésekről a következő táblázatban szereplő cikkek nyújtanak további tájékoztatást.
A kifejezés adattípusa |
Az ismertetést tartalmazó cikk |
Bármilyen típus |
|
Dátum/idő |
|
Szám |
|
Szöveg és feljegyzés |
|
Igen/Nem |
A hét_első_napja argumentum beállításai a következők:
Állandó |
Érték |
Leírás |
vbUseSystem |
0 |
Az NLS API beállítás használata. |
VbSunday |
1 |
Vasárnap (alapértelmezett) |
vbMonday |
2 |
Hétfő |
vbTuesday |
3 |
Kedd |
vbWednesday |
4 |
Szerda |
vbThursday |
5 |
Csütörtök |
vbFriday |
6 |
Péntek |
vbSaturday |
7 |
Szombat |
Az év_első_hete argumentum beállításai a következők:
Állandó |
Érték |
Leírás |
vbUseSystem |
0 |
Az NLS API beállítás használata. |
vbFirstJan1 |
1 |
Az legyen az első hét, amelybe január 1. esik (alapértelmezett). |
vbFirstFourDays |
2 |
Az első olyan hét legyen az év első hete, amelynek legalább négy napja az adott évben van. |
vbFirstFullWeek |
3 |
Az év első teljes hete legyen az első hét. |
Megjegyzések
Formázás |
Művelet |
Számok |
Használhat előre definiált elnevezett számformátumokat, vagy létrehozhat felhasználó által definiált számformátumokat. |
Dátum és idő |
Használhat előre elnevezett definiált dátum- és időformátumokat, vagy létrehozhat felhasználó által definiált dátum- és időformátumokat. |
Dátumot és időt jelölő sorszámok |
Dátum- és időformátumokat vagy számformátumokat használhat. |
Karakterláncok |
Hozza létre saját felhasználói karakterlánc-formátumait. |
Ha a formátum megadása nélkül próbál meg formázni egy számot, a Formátum az Str függvényhez hasonló funkciókat biztosít, bár nemzetközileg is tisztában van vele. A Format használatával sztringként formázott pozitív számok azonban nem tartalmaznak az érték előjeléhez fenntartott kezdő szóközt; az Str használatával konvertáltak megőrzik a kezdő szóközt.
Ha egy nem honosított numerikus karakterláncot formáz meg, valamilyen felhasználói számformátumot kell használnia, hogy az eredmény biztosan megfeleljen az elvárásainak.
Megjegyzés: Ha a Calendar tulajdonság érteke Gregorian (Gergely-naptár), és a formátum dátumformátumot ír elő, a megadott kifejezésnek Gergely-naptár szerintinek kell lennie. Ha a Visual Basic Calendar tulajdonság értéke Hijri, a megadott kifejezésnek iszlám naptár szerintinek kell lennie.
Ha a naptár Gergely-naptár, a formázási kifejezések szimbólumainak jelentése nem változik. Ha a naptár hijri, minden dátumformátumszimbólum (például dddd, mmmm, yyyy) ugyanazt a jelentést használja, de a Hijri naptárra vonatkozik. A formátumszimbólumok angol nyelvűek maradnak; A szöveges megjelenítést eredményező szimbólumok (például AM és PM) az adott szimbólumhoz társított sztringet (angol vagy arab) jelenítik meg. Bizonyos szimbólumok tartománya megváltozik, ha a naptár hijri.
Szimbólum |
Tartomány |
d |
1–30 |
dd |
1–30 |
ww |
1–51 |
mmm |
A hónapok teljes nevét jeleníti meg (az iszlám hónapneveknek nincs rövidítése). |
y |
1–355 |
yyyy |
100–9666 |
Példák
A Format függvény használata kifejezésben: A Format függvényt használhatja bárhol, ahol megadható kifejezés. Alkalmazhatja például lekérdezésben egy mező aliasának részeként, illetve az űrlapokon vagy jelentésekben szereplő szövegmezők Mező vagy kifejezés tulajdonságában. A következő példák egy olyan kifejezést mutatnak be, amellyel egy jelentés Szűrő tulajdonságában az előző hétre korlátozhatók a megjelenített rekordok.
Format([Dátum],"ww")=Format(Now(),"ww")-1
Ebben a példában a jelentés rekordforrásának van egy Date (Dátum) nevű mezője, amely tartalmazza az egyes rekordok módosításának dátumát, és amelyet a jelentés használ. A jelentés futtatásakor a rendszer úgy szűri az eredményeket, hogy csak azokat a rekordokat jelenítse meg, ahol a Dátum mező (Format([Date],"ww")) értékének hete megegyezik az előző hétvel (Format(Now(),"ww")-1.
A Format függvény használata VBA-kódban:
Megjegyzés: A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.
Ebben a példában a Format függvény különféle alkalmazásait mutatjuk be, az elnevezett formátumokra és a felhasználói formátumokra is kiterjedően. A dátumelválasztó (/), az időelválasztó (:) és az AM/ PM literál esetében a rendszer által ténylegesen megjelenített formázott kimenet függ annak a számítógépnek a területi beállításaitól, amelyen fut a kód. A fejlesztőkörnyezetben a kód területi beállításának megfelelő rövid időformátum és rövid dátumformátum jelenik meg. Futó kódban a rendszer területi beállításának rövid időformátumát és rövid dátumformátumát használja a rendszer, ez pedig eltérő lehet a kód területi beállításától. A példa kedvéért az angol (Egyesült Államok) területi beállítást tételezzük fel.
A fejlesztőkörnyezetben a MyTime és a MyDate a rendszer aktuális rövid időformátum-beállítása és rövid dátumformátum-beállítása alapján jelenik meg.
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".
A Format használata nulla hosszúságú karakterláncokkal
A Microsoft Access 2.0-s és korábbi verzióiban a Format függvénnyel megoldható volt, hogy nulla hosszúságú karaktersorozat esetén visszaadjon egy értéket, érték esetén pedig egy másikat. Például a Format függvénnyel megadott következő formátumkifejezéssel vissza lehetett adni a megfelelő karakterláncértéket a kódból:
Dim varX As Variant
Dim varStrX As Variant ' Assign some value to varStrX and pass to Format function. varX = Format(varStrX, "@;ZLS;Null")
A Microsoft Access 97-es és újabb verzióiban külön tesztelni kell, hogy nem Null-e az érték, majd az eredmény alapján kell visszaadni a megfelelő értéket. Például a következőképpen használható az IIf függvény egy kifejezésben a Format függvénnyel:
varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))
Ez a változtatás csak arra az esetre érvényes, ha attól függően kíván megformázni egy karakterláncot a Format függvénnyel, hogy nulla hosszúságú karakterláncról vagy Null értékről van-e szó. A Format függvénnyel használt egyéb formátumkifejezések ugyanúgy működnek, mint a korábbi verziókban.
Ha konvertál egy adatbázist a Microsoft Access 2.0-s és korábbi verzióiról a Microsoft Access 2002-es vagy újabb verzióira, módosítania kell úgy a kódot, hogy külön megvizsgálja a Null érték esetét.