Pomocou funkcií reťazca môžete v Accesse vytvárať výrazy, ktoré upravujú text rôznymi spôsobmi. Vo formulári môžete napríklad chcieť zobraziť len časť poradového čísla. Alebo môže byť potrebné spojiť (zreťaziť) niekoľko reťazcov, ako je napríklad priezvisko a krstné meno. Ak ešte nemáte dostatočné skúsenosti s výrazmi, pozrite si zostavenie výrazu.
Tu je zoznam niektorých najbežnejších operácií s reťazcami v Accesse a funkcií, ktoré by ste mohli použiť na ich vykonanie:
| Akcia… | Pomocou... | Napríklad... | Výsledky |
|---|---|---|---|
| Vrátenie znakov od začiatku reťazca | Funkcia Left | =Left([SériovéČíslo];2) | Ak je hodnota [SerialNumber] "CD234", výsledkom je "CD". |
| Vrátenie znakov z konca reťazca | Funkcia Right | =Right([SériovéČíslo],3) | Ak je hodnota [SerialNumber] "CD234", výsledok je "234". |
| Vyhľadanie pozície znaku v reťazci | Funkcia InStr | =InStr(1;[Meno];"i") | Ak je [Meno] "Colin", výsledok je 4. |
| Vrátenie znakov od stredu reťazca | Funkcia Mid | =Mid([SériovéČíslo];2;2) | Ak je hodnota [SerialNumber] CD234, výsledok je D2. |
| Orezanie úvodných alebo koncových medzier z reťazca | Funkcie LTrim, RTrim a Trim | =Trim([Meno]) | Ak je [Meno] " Colin ", výsledok je "Colin". |
| Spojenie dvoch reťazcov dohromady | Operátor so znamienkom plus (+)* | =[Meno] + [Priezvisko] | Ak [Meno] je "Colin" a [Priezvisko] je Wilcox, výsledok je "ColinWilcox" |
| Spojenie dvoch reťazcov medzerou medzi nimi | Operátor so znamienkom plus (+)* | =[Meno] + " " + [Priezvisko] | Ak [Meno] je "Colin" a [Priezvisko] je Wilcox, výsledok je "Colin Wilcox" |
| Zmena veľkosti písmen v reťazci na veľké alebo malé písmená | Funkcia UCase alebo LCase | =UCase([Meno]) | Ak je [Meno] "Colin", výsledok je "COLIN". |
| Určenie dĺžky reťazca | Len (funkcia) | =Len([Meno]) | Ak je argument [Meno] pomenovaný "Colin", výsledkom je hodnota 5. |
* Dobre, takže to nie je funkcia, je to operátor. Je to však najrýchlejší spôsob spájania reťazcov. V počítačovej databáze môžete na zreťazenie použiť aj operátor ampersand (&).
V Accesse je mnoho ďalších funkcií súvisiacich s textom. Vhodným spôsobom, 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 sa tu nachádza malé tlačidlo Zostaviť , ktoré vyzerá takto:
Aby sme si predviedli Zostavovač výrazov, otvorme ho z vlastnosti Zdroj ovládacieho prvku vo formulári alebo zobrazení. Použite niektorý z postupov uvedených nižšie v závislosti od toho, či používate počítačovú databázu alebo webovú aplikáciu Accessu.
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 k dispozícii formulár, 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.
In the Property Sheet, click All>Control Source and click the Build button button
on the right side of the Control Source property box.
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ýrazov kliknite na rôzne funkcie a prečítajte si stručné popisy v dolnej časti Zostavovača výrazov.
Poznámka
Nie všetky tieto funkcie sú dostupné vo všetkých kontextoch. Access filtruje zoznam automaticky podľa toho, ktoré z nich sú vhodné v jednotlivých kontextoch.
Väčšia flexibilita pri kombinovaní textových funkcií
Niektoré funkcie reťazcov obsahujú číselné argumenty, ktoré je v niektorých prípadoch nutné vypočítať pri každom volaní funkcie. Napríklad funkcia Left vezme reťazec a číslo, ako je to =Left(SériovéČíslo, 2). Je to skvelé, ak viete, že vždy potrebujete zostávajúce dva znaky, ale čo v prípade, že počet potrebných znakov sa líši v závislosti od položky k položke? Namiesto "pevného kódovania" počtu znakov môžete zadať inú funkciu, ktorá ho vypočíta.
Tu je príklad poradových čísel, z ktorých každé má niekde v reťazci spojovník. Umiestnenie spojovníka je však rôzne:
| Sériové číslo |
|---|
| 3928-29993 |
| 23-9923 |
| 333-53234 |
| 3399940-444 |
Ak chcete zobraziť len čísla naľavo od spojovníka, musíte zakaždým vykonať výpočet a zistiť, kde sa spojovník nachádza. Jednou z možností je urobiť niečo takéto:
=Left([SériovéČíslo];InStr(1;[SériovéČíslo];"-")-1)
Namiesto zadávania čísla ako druhého argumentu funkcie Left sme zapojili funkciu InStr, ktorá vráti pozíciu spojovníka v poradovom čísle. Odčítajte od tejto hodnoty číslo 1 a získate správny počet znakov, ktoré má funkcia Left vrátiť. Na prvý pohľad sa to zdá trochu zložitejšie, no s trochou experimentovania môžete skombinovať dva alebo viac výrazov, aby ste dosiahli požadované výsledky.