Vráti hodnotu typu Variant (String), ktorá obsahuje výraz formátovaný podľa pokynov obsiahnutých vo výraze formátu.
| Upozornenie Vyskytol sa problém s používaním tejto funkcie. Posledný pondelok v niektorých kalendárnych rokoch sa môže vrátiť ako týždeň 53, pričom mal to byť týždeň 1. Ďalšie informácie a alternatívne riešenie nájdete v téme Funkcie Format alebo DatePart môžu vrátiť nesprávne číslo týždňa za posledný pondelok v roku. |
|---|
Syntax
Format( *výraz [, formát] [, prvý deň týždňa ] [, prvý týždeň roka ] )
Syntax funkcie Format má tieto argumenty:
| Argument | Popis |
|---|---|
| výraz | Povinný argument. Ľubovoľný platný výraz. |
| formát | Voliteľný argument. Platný výraz pomenovaného alebo používateľom definovaného formátu. |
| prvýdeňtýždňa | Voliteľný argument. Konštanta, ktorá určuje prvý deň týždňa. |
| prvýtýždeňroka | Voliteľný argument. Konštanta, ktorá určuje prvý týždeň roka. |
Nastavenia
Argument formát môže používať rôzne nastavenia v závislosti od typu údajov argumentu výrazu . Ďalšie informácie o výrazoch platného formátu nájdete v článkoch uvedených v nasledujúcej tabuľke.
| Výrazy, ktoré používajú tento typ údajov... | Pozrite si článok |
|---|---|
| Ľubovoľný typ | Vlastnosť formátu |
| Dátum/čas | Formátovanie poľa dátumu a času |
| Číslo | Formátovanie poľa s číslom alebo menou |
| Text a memo | Formátovanie textového poľa |
| Áno/Nie | Vlastnosť formátu – typ údajov Áno/Nie |
Argument prvýdeňtýždňa má tieto nastavenia:
| Konštanta | Hodnota | Popis |
|---|---|---|
| vbUseSystem | 0 | Použije sa nastavenie NLS API. |
| VbSunday | 1 | Nedeľa (predvolené) |
| vbMonday | 2 | Pondelok |
| vbTuesday | 3 | Utorok |
| vbWednesday | 4 | Streda |
| vbThursday | 5 | Štvrtok |
| vbFriday | 6 | Piatok |
| vbSaturday | 7 | Sobota |
Argument prvýtýždeňroka má tieto nastavenia:
| Konštanta | Hodnota | Popis |
|---|---|---|
| vbUseSystem | 0 | Použije sa nastavenie NLS API. |
| vbFirstJan1 | 1 | Začína sa týždňom, do ktorého spadá 1. január (predvolená možnosť). |
| vbFirstFourDays | 2 | Začína sa prvým týždňom, v ktorom sa nachádzajú aspoň štyri dni roka. |
| vbFirstFullWeek | 3 | Začína sa prvým celým týždňom v roku. |
Poznámky:
| Formátovanie | Postup |
|---|---|
| Čísla | Použite vopred definované pomenované numerické formáty alebo vytvorte používateľom definované numerické formáty. |
| Dátum a čas | Použite vopred definované pomenované formáty dátumu a času alebo vytvorte používateľom definované formáty dátumu a času. |
| Poradové čísla dátumu a času | Použite formáty dátumu a času alebo číselné formáty. |
| Reťazce | Vytvorte vlastné používateľom definované formáty reťazca. |
Ak sa pokúsite naformátovať číslo bez určenia formátu, funkcia Format poskytne podobné možnosti ako funkcia Str , aj keď sa používa medzinárodne. Kladné čísla naformátované ako reťazec pomocou funkcie Format však nezahŕňajú medzeru na začiatku, ktorá je vyhradená pre znamienko hodnoty. Bunky konvertované pomocou funkcie Str zachovávajú úvodnú medzeru.
Ak formátujete nelokalizovaný číselný reťazec, mali by ste použiť používateľom definovaný číselný formát, pomocou ktorého môžete zabezpečiť požadovaný vzhľad.
Poznámka
Ak je vlastnosť Kalendár nastavená na možnosť Gregoriánsky a argument formát určuje formátovanie dátumu, zadaný výraz musí byť podľa gregoriánskeho kalendára. Ak je vlastnosť Kalendár programu Visual Basic nastavená na možnosť Hedžra, zadaný výraz musí byť podľa kalendára Hedžra.
Ak je kalendár gregoriánsky, význam symbolov pre výraz formátu sa nezmení. Ak ide o kalendár Hedžra, všetky symboly pre formát dátumu (napríklad dddd, mmmm, rrrr) majú rovnaký význam, ale vzťahujú sa na kalendár Hedžra. Symboly pre formát zostanú v anglickom jazyku; symboly, ktorých výsledkom je zobrazenie textu (napríklad AM a PM) zobrazia reťazec (v angličtine alebo arabčine) priradený k danému symbolu. V kalendári Hedžra sa mení rozsah určitých symbolov.
| Symbol | Rozsah |
|---|---|
| d | 1 – 30 |
| dd | 1 – 30 |
| ww | 1 – 51 |
| mmm | Zobrazí celý názov mesiaca (názvy mesiacov v kalendári Hedžra nemajú žiadne skratky). |
| y | 1 – 355 |
| yyyy | 100 – 9666 |
Príklady
Použitie funkcie Format vo výrazeFormát môžete použiť všade tam, kde chcete použiť výrazy. Môžete ju napríklad použiť v dotaze ako súčasť pre alias poľa alebo v rámci vlastnosti textového poľa Zdroj ovládacieho prvku vo formulári alebo zostave. V nasledujúcich príkladoch je znázornené použitie výrazu v rámci vlastnosti zostavy pre Filter, pomocou ktorej môžete obmedziť výstupy na záznamy z predchádzajúceho týždňa.
Format([Dátum],"ww")=Format(Now(),"ww")-1
V tomto príklade má zdroj záznamu v zostave názov poľa Dátum, v ktorom sa nachádzajú dátumy, kedy boli všetky jednotlivé záznamy upravené a použité v zostave. Po spustení zostavy sa výsledky vyfiltrujú a zobrazia sa iba tie záznamy, v ktorých je týždeň pre hodnotu v poli Dátum (Format([Dátum],"ww")) zhodný s predchádzajúcim týždňom (Format(Now(),"ww")-1).
Použitie funkcie Format v kóde VBA
Poznámka
Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.
V tomto príklade sú znázornené rôzne použitia funkcie Format na formátovanie hodnôt s použitím pomenovaných formátov alebo používateľom definovaných formátov. V prípade oddeľovača dátumu (/), oddeľovača času (:) a doslovného hodnoty AM/PM závisia skutočný formátovaný výstup zobrazený vaším systémom od miestnych nastavení počítača, v ktorom je kód spustený. Keď sa vo vývojárskom prostredí zobrazujú časy a dátumy, používa sa krátky formát času a krátky formát dátumu miestnych nastavení kódu. Pri zobrazení spustením kódu sa používajú krátky formát času a krátky formát dátumu miestnych nastavení systému, ktoré sa môžu líšiť od miestnych nastavení kódu. V tomto príklade sa predpokladá miestne nastavenie americkej angličtiny.
MyTime a MyDate zobrazujú sa vo vývojárskom prostredí pomocou nastavenia krátkeho času a krátkeho dátumu v aktuálnom systéme.
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".
Používanie funkcie Formát s reťazcami nulovej dĺžky
V Microsoft Accesse verzie 2.0 a staršej môžete funkciu Format použiť na vrátenie jednej hodnoty pre reťazec s nulovou dĺžkou a druhej pre hodnotu. Ak chcete vrátiť príslušnú hodnotu reťazca z kódu, môžete vo funkcii Format použiť nasledujúce výrazy formátu:
Dim varX As Variant
Dim varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")
V Microsoft Accesse verzie 97 a novšej musíte výskyt hodnoty Null otestovať osobitne a potom na základe výsledku príslušnú hodnotu vrátiť. Môžete napríklad použiť funkciu IIf vo výraze s funkciou Format, napríklad takto:
varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))
Táto zmena sa vzťahuje len na prípady, keď funkciu Format používate na formátovanie reťazca v závislosti od toho, či ide o reťazec s nulovou dĺžkou alebo s hodnotou Null. Ostatné výrazy formátu, ktoré sa používajú s funkciou Format, budú aj naďalej fungovať tak, ako v predchádzajúcich verziách.
Ak databázu z Microsoft Accessu verzie 2.0 a staršej skonvertujete na Microsoft Access 2002 alebo novší, musíte zmeniť kód a výskyt hodnoty Null testovať osobitne.