Pomocou funkcií reťazca môžete v Accesse vytvárať výrazy, ktoré rôznymi spôsobmi manipulujú s textom. Vo formulári môžete napríklad zobraziť iba časť poradového čísla. Alebo možno budete musieť spojiť (zreťaziť) niekoľko reťazcov, napríklad priezvisko a krstné meno. Ak si ešte nie ste istí výrazmi, pozrite si tému Vytvorenie výrazu.
Tu je zoznam niektorých bežných reťazcových operácií v Accesse a funkcií, ktoré by ste použili na ich vykonanie:
Akcia… |
Použiť... |
Napríklad... |
Výsledky |
---|---|---|---|
Vrátenie znakov zo začiatku reťazca |
=Left([Sériové číslo],2) |
Ak [SerialNumber] je "CD234", výsledkom je "CD". |
|
Vrátenie znakov z konca reťazca |
=Right([Sériové číslo],3) |
Ak [SerialNumber] je "CD234", výsledok je "234". |
|
Vyhľadanie pozície znaku v reťazci |
=InStr(1;[Meno];"i") |
Ak [FirstName] je "Colin", výsledok je 4. |
|
Vrátenie znakov zo stredu reťazca |
=Mid([Sériové číslo];2;2) |
Ak [SerialNumber] je "CD234", výsledok je "D2". |
|
Orezanie úvodných alebo koncových medzier z reťazca |
=Trim([Meno]) |
Ak [FirstName] je " Colin ", výsledok je "Colin". |
|
Spojenie dvoch reťazcov |
Operátor znamienko plus (+) * |
=[Meno] + [Priezvisko] |
Ak [FirstName] je "Colin" a [LastName] je Wilcox, výsledok je "ColinWilcox" |
Spojenie dvoch reťazcov spolu s medzerou medzi nimi |
Operátor znamienko plus (+) * |
=[Meno] + " " + [Priezvisko] |
Ak [FirstName] je "Colin" a [LastName] je Wilcox, výsledok je "Colin Wilcox" |
Zmena veľkosti písmen reťazca na veľké alebo malé písmená |
Funkcia UCase alebo funkcia LCase |
=UCase([Meno]) |
Ak [FirstName] je "Colin", výsledok je "COLIN". |
Určenie dĺžky reťazca |
=Len([Meno]) |
Ak [FirstName] je "Colin", výsledok je 5. |
* Dobre, takže to nie je funkcia, je to operátor. Je to však najrýchlejší spôsob, ako spojiť reťazce dokopy. V počítačovej databáze môžete na zreťazenie použiť aj operátor ampersand (&).
V Accesse existuje mnoho ďalších funkcií súvisiacich s textom. Dobrý spôsob, ako sa o nich dozvedieť viac, je otvoriť Zostavovač výrazov a prehľadávať zoznamy funkcií. Zostavovač výrazov je k dispozícii takmer všade, kde chcete vytvoriť výraz– zvyčajne existuje malé tlačidlo Zostaviť , ktoré vyzerá takto:
Ak chcete predviesť Zostavovač výrazov, otvorme ho z vlastnosti Zdroj ovládacieho prvku vo formulári alebo zobrazení. V závislosti od toho, či používate počítačovú databázu alebo webovú aplikáciu Accessu, použite niektorý z postupov uvedených nižšie.
Zobrazenie Zostavovača výrazov v počítačovej databáze
-
Otvorte počítačovú databázu (.accdb).
-
Stlačením klávesu F11 otvorte navigačnú tablu, ak ešte nie je otvorená.
-
Ak už máte formulár k dispozícii, kliknite naň pravým tlačidlom myši na navigačnej table a potom kliknite na položku Zobrazenie rozloženia. Ak nemáte formulár, s ktorým by ste mohli pracovať, kliknite na položku Vytvoriť > formulár.
-
Kliknite pravým tlačidlom myši na textové pole vo formulári a potom kliknite na položku Vlastnosti.
-
V hárku vlastností kliknite na položku Všetky > zdroj ovládacieho prvku a kliknite na tlačidlo Zostaviť na pravej strane poľa vlastnosti Zdroj ovládacieho prvku .
-
V časti Prvky výrazu rozbaľte uzol Funkcie a kliknite na položku Vstavané funkcie.
-
V časti Kategórie výrazov kliknite na položku Text.
-
V časti Hodnoty výrazu kliknite na rôzne funkcie a prečítajte si krátke popisy v dolnej časti Zostavovača výrazov.
Poznámka: Nie všetky tieto funkcie sú k dispozícii vo všetkých kontextoch. Access automaticky filtruje zoznam podľa toho, ktoré fungujú v jednotlivých kontextoch.
Kombinovanie textových funkcií na väčšiu flexibilitu
Niektoré reťazcové funkcie obsahujú číselné argumenty, ktoré je v niektorých prípadoch potrebné vypočítať pri každom volaní funkcie. Funkcia Left napríklad použije reťazec a číslo, napríklad =Left(SerialNumber; 2). Je to skvelé, ak viete, že vždy potrebujete dva ľavé znaky, ale čo ak sa požadovaný počet znakov líši od položky k položke? Namiesto "pevného kódovania" počtu znakov môžete zadať inú funkciu, ktorá ju vypočíta.
Tu je príklad poradových čísel, z ktorých každý má niekde v reťazci spojovník. Poloha spojovníka sa však líši:
Sériové číslo |
---|
3928-29993 |
23-9923 |
333-53234 |
3399940-444 |
Ak chcete zobraziť iba čísla naľavo od spojovníka, musíte vykonať výpočet zakaždým, aby ste zistili, kde sa nachádza spojovník. Jednou z možností je urobiť niečo takéto:
=Left([SerialNumber],InStr(1;[SerialNumber];"-")-1)
Namiesto zadania čísla ako druhého argumentu funkcie Left sme zapojili funkciu InStr, ktorá vráti pozíciu spojovníka v poradovom čísle. Odčítajte hodnotu 1 od tejto hodnoty a získate správny počet znakov pre funkciu Left, ktorá sa má vrátiť. Zdá sa, že na prvý raz je to trochu komplikované, ale s trochou experimentovania môžete skombinovať dva alebo viac výrazov a dosiahnuť tak požadované výsledky.