Funkcia Format

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, keď by mal byť týždeň 1. Ďalšie informácie a alternatívne riešenie nájdete v téme funkcia Format alebo DatePart môže vrátiť nesprávne číslo týždňa za posledný pondelok v roku.

Pozrite si niekoľko príkladov

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žiť rôzne nastavenia v závislosti od typu údajov argumentu výraz . Ďalšie informácie o platných formátových výrazoch 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 číslo alebo mena

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 formátovať číslo bez zadania formátu, funkcia Format poskytuje funkcie podobné funkcii str , hoci je medzinárodne vedomá. Kladné čísla formátované ako reťazce s použitím formátu však neobsahujú úvodné miesto vyhradené pre znamienko hodnoty. tieto konvertované pomocou funkcie str zachovajú úvodné miesto.

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ýraze    Funkciu Format 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 sa zobrazujú rôzne možnosti použitia funkcie Format na formátovanie hodnôt pomocou názvových formátov a formátov definovaných používateľom. Pre oddeľovač dátumu (/), časový oddeľovač (:) a AM/PM doslovný, skutočný formátovaný výstup zobrazený vaším systémom závisí od miestnych nastavení počítača, v ktorom je kód spustený. Keď sa v vývojovom prostredí zobrazia časy a dátumy, použije sa formát krátkeho času a krátkeho dátumu v miestnych nastaveniach kódu. Keď sa zobrazí spustením kódu, použije sa formát krátkeho času a krátky dátum pre miestne nastavenie systému, ktorý sa môže líšiť od miestneho nastavenia kódu. V tomto príklade sa predpokladá miestne nastavenie v anglickom jazyku.

MyTime a MyDate sú zobrazené 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 Format s reťazcami nulovej dĺžky

V Microsoft Accesse verzie 2.0 a staršej môžete funkciu Formát použiť na vrátenie jednej hodnoty pre reťazec nulovej dĺžky 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.

Pozrite tiež

Funkcie na prácu s reťazcami a spôsob ich používania

Rozšírte svoje zručnosti práce s balíkom Office
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×